Во вчерашней статье «Адаптация шаблона под GoGetLinks в одной или нескольких рубриках» я подал идею того, как разделить уже имеющийся шаблон на две части, одна из которых будет адаптирована под требования биржи GoGetLinks, и будет с малым количеством ссылок, и другую, которая не принесет изменений в оформление блога. На самом деле идея проста. С помощью стандартной функции WordPress 'in_category' и условного оператора if, можно разделить шаблон на две части и переводить систему в ту часть шаблона, которая предназначена для тех или иных нужд.
Сейчас другая проблема. В списке последних постов появляются все посты, которые мы пишем. Заметки для GoGetLinks часто не соответствуют общей тематике блога. Как-то нелогично выводить их в общем списке последних постов.
Я предлагаю сделать два списка последних публикаций, разделив их, так же как разделен весь наш шаблон, на две части: для общего пользования и для GoGetLinks.
Пользуемся функциями, которые придумывает талантливейший веб-программист Тимур Камаев
Сначала дописываем в файл function.php рабочей темы следующую функцию:
/** Последние записи------------------------------------------------------$post_num (5) = количество ссылок$format ('') = {date:j.M.Y} — {a}{title}{/a} ({comments})$list_tag (li) = Тег списка*/function kama_recent_posts ($post_num=5, $format = '', $cat='', $list_tag='li', $echo=true){global $post, $wpdb;$cur_postID = $post->ID;if ($cat){$CatJOIN = «LEFT JOIN $wpdb->term_relationships rel ON ( p.ID = rel.object_id )LEFT JOIN $wpdb->term_taxonomy tax ON ( tax.term_taxonomy_id = rel.term_taxonomy_id )»;$DISTINCT = «DISTINCT»;$AND_taxonomy = «AND tax.taxonomy = 'category'»;preg_match_all ('/-[0-9]*/', $cat, $cat_exclude); //Проверка на исключение категорий$cat_exclude = str_replace ( '-','', implode ($cat_exclude[0],',') );if ($cat_exclude) $AND_category = «AND tax.term_id NOT IN ($cat_exclude)»;else $AND_category = «AND tax.term_id IN ($cat)»;}$sql = «SELECT $DISTINCT ID, post_title, post_date, comment_count, guidFROM $wpdb->posts p $CatJOINWHERE post_type = 'post' AND post_status = 'publish' $AND_category $AND_taxonomyORDER BY post_date DESC LIMIT $post_num»;$results = $wpdb->get_results ($sql);if (!$results) return false;preg_match ('!\{date:(.*?)\}!',$format,$date_m);foreach ($results as $pst){$x == 'li1' ? $x = 'li2' : $x = 'li1';if ( (int)$pst->ID == (int)$cur_postID ) $x .= « current-item»;$Title = $pst->post_title;$a1 = «<a href='». get_permalink ($pst->ID) . «' title='{$Title}'>»;$a2 = «</a>»;if ($format){$date = apply_filters ('the_time', mysql2date ($date_m[1],$pst->post_date));$Sformat = str_replace ($date_m[0], $date, $format);$Sformat = str_replace ('{title}', $Title, $Sformat);$Sformat = str_replace ('{a}', $a1, $Sformat);$Sformat = str_replace ('{/a}', $a2, $Sformat);$Sformat = str_replace ('{comments}', $pst->comment_count, $Sformat);}else $Sformat = $a1.$Title.$a2;$out .= «\n<$list_tag class='$x'>{$Sformat}</$list_tag>»;}if ($echo) echo $out;else return $out;}
<!-- вывод последних постов из всех категорий, кроме той, которая предназначена для GoGetLinks --><?php kama_recent_posts (15, '{a}{title}{/a}<br/>({date:j M.Y}, {comments} комм.)','-851'); ?<!-- 851 замените на ID вашей рубрики, предназначенной для Gogetlinks -->
<!-- вывод последних постов из категории, в которой размещаются статьи для GoGetLinks --><?php kama_recent_posts (15, '{a}{title}{/a}<br/>({date:j M.Y}, {comments} комм.)','851'); ?<!-- 851 замените на ID вашей рубрики, предназначенной для Gogetlinks -->
>>> талантливейший веб-программист
Спасибо!
Мне аж неудобно — какие громкие слова :-[
Это соответствует действительности и не надо скромничать, Тимур!
Женя, спасибо за своевременно поднятую тему.
А Тимуру отдельное спасибо за его сайт — много вкусностей и полезностей для себя нашел я там.
p.s. Почему-то приходится авторизоваться в комментариях... 🙁
Потому что комментарий без автора — это не комментарий.
Поэтому и приходится авторизоваться.
Уведомление: Гостевые посты. Взаимно увеличиваем популярность блогов.
Сейчас насколько я знаю стала очень популярной и доходной биржа вечных ссылок, у нее очень много преимуществ, в сравнении с другими биржами, поэтому я нацелен на большой заработок именно там.
При определенном упорстве и умении, Иван, там можно заработать очень хорошо. Не хочу хвастаться, но у меня кое что получается )))
Уведомление: GoGetLinks, Android, вредоносный код и многое другое.
В гогетлинкс, например, и правда можно хорошо подзаработать и далеко не мелочь 🙂 Проверено.
И спасибо за код. Пригодится.
Речь о мелочи — это так, рисовка. А что код пригодился — это очень приятно. Согласен, что заработать можно прилично.
Я только сейчас начинаю задумываться о монетизации, и снова встречаю информацию, что GoGetLinks лучший вариант. Внимательно прочла информацию, посмотрела ссылки. Понравился вывод отдельной категорией статей, очищенный шаблон не слишком понравился пустотой, так и хочется справа что-то добавить. Может быть туда загонять иллюстрации к посту?
Вопросы по существу: статьи из этой специальной рубрики вы сами пишите?;)
На сегодняшний день Вы используете эти самые показанные коды, или уже что-то поменяли?
Именно эти коды и использую, ничего не менял со дня написания этой статьи.
Все статьи пишу сам. Рекламодатели знают об этом и заказывают много, бывает, что очень много.