Модуль блогов. Как вывести записи с категории?

#16 22 августа 2014 в 23:25
Под полем "категории" у меня названия рубрик
Здесь в категории tttttttt ( id = 2) статья 77777777, статья wwwwwww в другой рубрики с id =1 другого юзера. Нулевая это без рубрики.
Покажи файл backend.php
#17 22 августа 2014 в 23:50
  1.  
  2. <?xml version="1.0" encoding="utf-8"?>
  3. <backend>
  4. <module>
  5. <id>mod_blogs</id>
  6. </module>
  7. <params>
  8.  
  9. <param type="list" name="sort">
  10. <option value="rating" />
  11. <option value="comments_count" />
  12. <option value="pubdate" />
  13. </param>
  14.  
  15. <param type="list" name="owner">
  16. <option value="user" />
  17. <option value="club" />
  18. </param>
  19.  
  20. <param type="list_db" name="blog_id" src="cms_blogs" src_title="title" src_value="id" >
  21. <option value="0" />
  22. </param>
  23.  
  24. <param type="list_db" name="cat_id" src="cms_blogs" src_title="title" src_value="id" >
  25. <option value="0" />
  26. </param>
  27.  
  28. <param type="number" name="shownum" default="5" />
  29.  
  30. <param type="number" name="minrate" default="5" />
  31.  
  32. <param type="flag" name="showrss" default="on" />
  33.  
  34. </params>
  35. </backend>
  36.  
Наверное вопрос в корне не понятный, или я чего не понимаю. В общем, есть блог с названием "Скрипты". В данном блоге созданы рубрики:
1. php
2. javascript
3. ruby

В настройках модуля стандартная настройка "Посты из блога" — выбирается "Скрипты"
Ниже нужна настройка "Из какой рубрики данного блога выводить" — выбирается "javascript"

В итоге, модуль выводит все посты из рубрики "javascript", которая находится в блоге "Скрипты". Да в принципе побоку где она находится, лишь бы с нее выводить)))

Не нужно выводить номер рубрики и т.п., всего лишь с нее выводить посты. Потом аналогично делается клон модуля, и выводятся остальные 2 рубрики так же. Для чего? Хочу в табы загнать, и не нравится стандартный вывод всех постов подряд.
#18 23 августа 2014 в 11:09
scanread, Ты меня конечно извини, но что то ты тормозишь.А мы здесь чем занимаемся второй день? Читай посты внимательно.В №14 я написал, что в параметрах прописать src="cms_blog_cats" почему у тебя src="cms_blogs"? Далее я тебе привёл пример пост№16, где указал, что в категориях у тебя будут названия рубрик.Я не могу скриншотить выпадающий список и поэтому в модуле вывел id рубрик для примера.Можно было и названия вывести, но пришлось бы ф-цию запроса дописывать, но видно всё таки придётся. Смотри внимательно


Пост из блога admins.Категория пока не выбрана, так как модуль ещё не доделан, но в списке все категории(рубрики) присутствуют. Теперь смотри на модуль



Сейчас открыт блог admins рубрика там одна "123456" И в модуле выведена статья из этой рубрики, Что не так? Будем продолжать?
#19 23 августа 2014 в 13:18
Lora, да я перебирал же параллельно, не то скинул. В общем, по порядку, с нуля:

1. В модуль прописываю
  1. $cat_id = cmsCore::request('cat_id', 'int', 0);
2. В бэкэнд.хмл прописываю:
  1. <param type="list_db" name="cat_id" src="cms_blogs_cats" src_title="title" src_value="id" >
  2. <option value="0" />
  3. </param>
3. В файле /languages/ru/admin/modules/mod_blod.php
  1. $_LANG['MOD_CAT_ID'] = 'Категории'; // или что нравится
  2. $_LANG['MOD_CAT_ID_OPT'] = 'Категории'; // или что нравится
в итоге у меня ошибка

DATABASE ERROR:
SELECT id as value, title as title
FROM cms_blogs_cats

ORDER BY title
LIMIT 100
Table 'mytemp.cms_blogs_cats' doesn't exist

Но переменная в шаблоне {$post.cat_id} выводит ИД категории.
#20 23 августа 2014 в 14:20

<param type="list_db" name="cat_id" src="cms_blogs_cats" src_title="title" src_value="id" >
<option value="0" />
</param>

scanread

  1. <param type="list_db" name="cat_id" src="cms_blog_cats" src_title="title" src_value="id" >
  2. <option value="0" />
  3. </param>
  4.  
Найди отличия.
#21 23 августа 2014 в 14:37
Lora, scratchкаюсь, моя ошибка. Ночью не доглядел, с утра не перепроверил. Категории выводятся. Осталось как-то их закрепить за определенным блогом. Поскольку при выборе из блога эта категория отображается вначале списка, но потом отображаются все остальные из того же блога.
#22 23 августа 2014 в 15:12
Ну что же, scanread, последний рывок laugh
В модуль после этого, например
  1. if($cfg['blog_id']){
  2. $inBlog->whereBlogIs($cfg['blog_id']);
  3. }
  1. if($cfg['cat_id']){
  2. $inBlog->whereCatIs($cfg['cat_id']);
  3. }
И на этом всё. Но! Если выбираешь категорию, то удостоверься, что она есть в блоге, иначе модуль пропадает. Это конечно тоже решается проверкой, но до этого ты и сам допетришь, я думаю.
#23 23 августа 2014 в 15:37
Я не знаю, scanread, я сейчас добавил ещё одну статью в категорию, и у меня всё вывелось, потом добавил ещё оду рубрику и статью в неё и всё работает.Блоги какие персональные или нет? Давай показывай module.php
#24 23 августа 2014 в 15:47
Lora, спасибо. Да нет, все ок, я в бэкэнде экспериментировал, и значение type="list_db" name="переменная" указал свое, надо было обратно просто изменить на кэт_ид. Потому сообщение сразу же удалил с форума)

На счет персональные или нет — мало пока это беспокоит, т.к. это вывод постов идет с админовских блогов, а они все персональные. И все гуд выводится. smile
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.