Позиция в тексте статьи

Тема в разделе "Программирование", создана пользователем titaniMOZG, 21.08.2009.

  1. titaniMOZG
    Offline

    titaniMOZG Недавно здесь

    Регистрация:
    20.01.2008
    Сообщения:
    74
    Симпатии:
    0
    Пол:
    Мужской
    Как можно вывести модуль в тексте статьи?
    Например, идет текст, и в нем стоит <div style="float:right">Содержание модуля</div>
    Т.к. статья состоит из двух частей: вступительный текст и полный текст, тогда что бы этот модуль вставлялся в начале полного текста и выводился соотственно при просмотре полной версии статьи.
     
  2.  
  3. Offline

    _voland_ специалист

    Регистрация:
    12.04.2008
    Сообщения:
    2 173
    Симпатии:
    102
    Пол:
    Мужской
  4. stranik
    Offline

    stranik специалист

    Регистрация:
    03.12.2008
    Сообщения:
    548
    Симпатии:
    36
    Пол:
    Мужской
    {mosloadposition user9}. вместо user9 любая позиция - это вывод модуля в контенте
    Пока писал/чухался _voland_ ответил :)
     
  5. titaniMOZG
    Offline

    titaniMOZG Недавно здесь

    Регистрация:
    20.01.2008
    Сообщения:
    74
    Симпатии:
    0
    Пол:
    Мужской
    А еще такое уточнение - как это сделать в 1.0.15 версии? :)
     
  6. stranik
    Offline

    stranik специалист

    Регистрация:
    03.12.2008
    Сообщения:
    548
    Симпатии:
    36
    Пол:
    Мужской
    Так как я описал, тока модуль должен быть опубликован
     
  7. titaniMOZG
    Offline

    titaniMOZG Недавно здесь

    Регистрация:
    20.01.2008
    Сообщения:
    74
    Симпатии:
    0
    Пол:
    Мужской
    Ага, ясно. А как этот процесс можно автоматизировать, что бы этот блок добавлялся к каждой статье автоматом?
     
  8. stranik
    Offline

    stranik специалист

    Регистрация:
    03.12.2008
    Сообщения:
    548
    Симпатии:
    36
    Пол:
    Мужской
    По простому никак. Самому надо мамбот писать
     
  9. titaniMOZG
    Offline

    titaniMOZG Недавно здесь

    Регистрация:
    20.01.2008
    Сообщения:
    74
    Симпатии:
    0
    Пол:
    Мужской
    А если в коде пошариться, что бы добавить позицию?
    Я облазил content.php и content.html.php, но найти место, куда пристроить нужный код, что то не смог...
     
  10. stranik
    Offline

    stranik специалист

    Регистрация:
    03.12.2008
    Сообщения:
    548
    Симпатии:
    36
    Пол:
    Мужской
    Тогда тока ручками копипастить
     
  11. titaniMOZG
    Offline

    titaniMOZG Недавно здесь

    Регистрация:
    20.01.2008
    Сообщения:
    74
    Симпатии:
    0
    Пол:
    Мужской
    А я разобрался :)

    Я хоть в php вообще полный нуб, но мои познания JS вместе с методом тыка дали таки нужный результат за пару часов стараний :)

    Если кому понадобится, открываем файл content.html.php
    Ищем:
    Код (PHP):
    1. // displays Item Text
    2. echo ampReplace( $row->text );


    После чего меняем на:
    Код (PHP):
    1. // displays Item Text
    2. if ( $params->get( 'intro_only' ) && $row->link_text ) {
    3.     echo ampReplace( $row->text );
    4. } else {
    5.     if (mosCountModules('intext')) {
    6.         echo '<div style="float:right; display:block; margin-left:5px;">';
    7.         echo mosLoadModules('intext', -1);
    8.         echo '</div>';
    9.     }
    10.         echo ampReplace( $row->text );
    11. }

    В этом случае будет выводиться позиция intext (не забываем добавить ее в Сайт - Шаблоны - Позиции модулей).
    Так же следует отметить, что такой способ работает только при включенной опции ссылки "Подробнее...".
    По факту - мы просто смотрим, выводится ли ссылка подробнее при построении страницы, если да, тогда ничего не выводим кроме текста, если нет - тогда выводится позиция в диве и потом текст. :)
     
  12. stranik
    Offline

    stranik специалист

    Регистрация:
    03.12.2008
    Сообщения:
    548
    Симпатии:
    36
    Пол:
    Мужской
    Ну вот а говорил незнаю :)
     

Поделиться этой страницей

Загрузка...