Доброго времени суток дорогие читатели моего блога. Я заметил, что не публикуя новый материал, моя посещалка так и не упал, это радует Думаю если бы я публиковался чаще, то давно бы уже имел огромною аудиторию читателей. А может быть и нет.. надо будет как нибудь проверить...
О чем сегодня я напишу? Очень давно читатель по имени Егор, попросил меня поведать о чудо модуле "Еще модули...". В своих бесконечно долгих делах, я откладывал данную тему на завтра. До откладывал ее до такой степени, что она попала, так сказать, в долгий ящик.
Но время пришло, и я решил все же дописать начатую заметку.
Сегодня на повестке дня, беглый разбор работы дополнительного модуля для системы RS-BLOG. Как понятно из названия поста, модуль называется "Виджет". Результат его работы Вы можете лицезреть на моем блоге. Видите с права картинку:
Данный блок был вставлен как раз с помощью данного дополнительного модуля. Модуль позволяет вставлять блоки с html кодом в сайтбар блога. Этот блок может быть списком, или, в моем случае, ссылкой на статью, или на чужой ресурс. В общем довольно простая и нужная штука.
Модуль можно поделить на две части.
Пользовательская часть вытаскивает блоки из базы данных, вставляет их в шаблон и выводит на экран.
Админ часть добавляет список блоков, форму добавления и редактирования.
Технически все реализовано точно так же как и сама система. Есть папка moduls есть папка templates и есть файл index.php в котором прописаны условия вызовов нужных функций. По сути эта такая мини системка встроенная в основную систему.
Я думаю если у Вас будет желание разобраться как сие чудо работает, то Вам будет достаточно прогуляться по файлам которые Вы можете скачать в конце данной заметки.
А теперь давайте попробуем его поставить.
Для начала спускаемся в низ заметки и качаем модуль. Теперь распаковываем его в папку /moduls/moremoduls/
Обратите внимание на пути, и на то, что в папке rs_widget находится не еще одна папка rs_widget, а именно файлы модуля.
После распаковки проходим в админ панель, в раздел настроек блога
Щелкаем по ссылке "Еще модули...".
Если Вы распаковали модуль правильно, то должны увидеть вот такое окошко
В общем то тут все ясно. Это табличка с описанием дополнительных модулей. Обратите внимание на колонку "Описание". В ней описано как вывести данные модуля в публичную часть блога. (кстати, данная информация берется из файла config.xml)
Для активации модуля нажмите на пустой кружочек
Если кружочек потемнел, значит модуль установился.
Для того что бы закончить установку, необходимо выполнить инструкцию описанную в описание модуля, а именно, зайти в пользовательский шаблон /templates/имя_шаблона/main.tpl.php, и прописать переменную вызова $rs_widget.
Я вставил данную переменную в сайтбар (правый блок) блога.
Одно маленькое предостережение. При активации модуля в БД создается таблица (код установщика можно поглядеть в файле installer.php), а при дезактивации модуля таблица будет удалена, стало быть все блоки, что Вы на создаете будут удалены.
После установки, модуль должен появится в главной панели админки (при условии что данным модулем можно управлять. В config.xml есть параметр control, если у параметра стоит 1, значит у модуля есть панель управления. Если же там стоит 0, то панель не предусмотрена. Кстати обратите внимание, что у параметра installer, после установки модуля, стоит единица. Это означает что модуль активен. Если же стоит ноль - значит модуль не установлен)
В управление данным модулем не должно быть затруднений, но есть один момент, о котором Вы должны знать. У модуля есть два режима публикации блоков.
На моем блоге, блок информации опубликован без шаблона. Вот пример видов блока с шаблоном и без:
Так вот, в режиме публикации с шаблоном, модуль использует шаблон widget_y.tpl.php, который лежит вот в этой папке: /moduls/moremoduls/rs_widget/templates/. Данный шаблон необходимо подстраивать для каждой темы блога в ручную. То же в принципе касается и шаблона widget_n.tpl.php который используется в режиме "Без шаблона". По мне там геморроя совсем ничего, но может поставить в ступор человека который не понимает html
В общем то на этом все.. Извиняюсь за долгий отклик на вопрос о модулях, и за то, что данный обзор из категории "Галопом по Европам", уж очень хочется после рабочего дня прилечь...
Ах, да.. Если будут какие то вопросы, оставляйте комментарии, будем думать
Прошу меня извинить, на этом все. Удачи Вам!
Модуль rs_widget |
Я уже подумал, что вы забросили данный блог..
Вы знайте, что ваш блог очень полезен для людей, которые хотят знать HTML, CSS, PHP - писать сайты.
У вас не то, что в книге там всякого дерьма побольше, а толкового поменьше. У вас именно все по теме.
Я прочел ваши статьи очень много раз. Даже сделали распечатки нужной информации и повесил на стенку перед собой.
У меня такая просьба, не могли бы вы (если будет свободное время) написать статью как создать свой портал или новостной блог современного вида (это с поддержкой html 5), хотел бы чтобы вы писали побольше модулей, а главное чтобы по чаще обновляли сайт (хотя бы оставляли посты поздравления с праздниками 23 и 8 и другими прочими праздниками) различными постами, ведь вы у меня в закладках и когда то я писал свой блог от вас и до сих пор его улучшаю, практически скоро наверное перегоню dle, хотя они тоже не отстают:(
Не подскажешь где здесь ошибка? (всю ночь сижу ломаю голову))))
У меня есть 4 записи в таблице last_news_lenta,
Как мне реализовать чтобы они все выводились через do while,
У меня почему то выводится только одна последняя запись(,
И как мне через таблицу sch_news_lenta (допустим там число 2) ограничить циклов do while?
Буду рад любому ответу)
Спаасибо
Может кому понадобится рабочая функция
Ну вообще все зависит от того что за виджет, и как он вообще подключен к блогу
добавил в news.php: $edd_tamp = str_replace("[_cat]",$myrow_index['cat'],$edd_tamp);
потом в news.tpl.php [_cat] и он вместо названий отображает цыфры...в чем может быть проблема?(
С помощью этого модуля к сожалению никак.
Теоретически возможно все. Но рекламу яндекса лучше вставлять не через этот модуль, а напрямую (код яндекса) в шаблон впихнуть
Вот я сделал блок, в нем выводится по 7 закрепленных записей, у которых в БД в строке block значение равно 1. А как сделать станицу, допустим "самое популярно", с ссылкой например test.ru/best, и уже на этой странице, выводились все закрепленные записи, то есть не 7 записей, как в блоке на главной, а все записи у которых в БД строка block равна 1. Крч как на странице с категориями.
Я писал этот мини движок очень давно, и честно говоря уже с трудом вспоминаю как он устроен. Но я помню одно, в попытках создать страничку с поиском, я понял, что при добавление новой сущности (наподобие Вашей странички) приходится перелопачивать почти весь движок (из-за этого я начал переписывать движок с нуля). Сейчас насколько я помню, есть три сущности:
Эти три сущности ориентируются на три переменные:
Вам нужно создать еще одну переменную (например $_GET['best']), и при создании такой переменной запускать функцию, которая получит Ваши 7 закрепленных записей.
Создавать эту переменную, в случае если у Вас включен ЧПУ, необходимо с помощью файла .htaccess. Приблизительно вот так:
В случае, когда Вы перейдете по ссылке test.ru/best у Вас создастся переменная $_GET['best'].