Обсуждения

Вывод постов только из одной рубрики

Использую плагин Static Front Page, подскажите пожалуйста самое простое решение, как выводить на главную, только посты которые постятся в рубрику "Новости"?
Спасибо.

Как правильно вписать строку, при использовании Page Navigation

Подскажите пожалуйста как верно вписать (в нижнюю часть страницы)

<?php paged_menu(); ?>

В index.php моей Темы:

<?php get_header(); ?>
            <div id="outer-column-container">
                <div id="inner-column-container">
                    <div id="source-order-container">
                        <div id="middle-column">
                            <div class="inside">
    <?php if (have_posts()) : ?>
        <?php while (have_posts()) : the_post(); ?>
            <div class="post" id="post-<?php the_ID(); ?>">
                <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php if (function_exists('the_title_attribute')) {the_title_attribute();} elseif (function_exists('the_title')) {the_title();} ?>"><?php the_title(); ?></a></h2>
                <div class="entry">
                    <?php the_content('More &raquo;'); ?>
                </div>
                <p class="postmetadata"><?php if ( function_exists('the_tags') ) {the_tags('Tags: ', ', ', '<br />');} ?> Posted <?php the_time('F jS, Y') ?> in <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?>  <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p>
            </div>
        <?php endwhile; ?>
    <?php else : ?>
        <h2 class="center">Not Found</h2>
        <p class="center">Sorry, but you are looking for something that isn't here.</p>
        <?php include (TEMPLATEPATH . "/searchform.php"); ?>
    <?php endif; ?>
                            </div>
                        </div>
                        <div id="left-column">
                            <div class="inside">
<?php get_sidebar(); ?>
                            </div>
                        </div>
                        <div class="clear-columns"><!-- do not delete --></div>
                    </div>
                    <div id="right-column">
                        <div class="inside">
<?php include ('sidebar2.php'); ?>
                        </div>
                    </div>
                    <div class="clear-columns"><!-- do not delete --></div>
                </div>
            </div>
<?php get_footer(); ?>

wp-cache и expired pages

Насколько я понимаю, expired pages – это осроченные.. Но почитав help (англ. не отличный) так и не понял в чём суть и из чего рассчитывается просроченность..

А самый главный вопрос, удаляет ли плагин сам просроченные страницы или мне это надо будет постоянно делать вручную?

Как узнать количество запросов к БД при генерации страницы

Собственно вопрос в названии топика. Буду очень благодарен за ответ )

titile ссылок для рубрик.

по-умолчанию titile ссылок для рубрик = названию рубрики. Можно ли как-нибудь его поменять?

Maxsite Russian Date – как перевести архивы по меясцам на русский?

Привет всем!
Давно хотел спросить, что нужно прописать в плагине Maxsite Russian Date, чтобы архивы записей по месяцам тоже переводились на русский?
Заранее спасибо!

Помогите найти плагин плиз!!

Здравствуйте, возникла интересная идея ,как для меня, ситуация такая: У меня выводится список постом(всё как обычно) нужно чтобы при наведении на ссылку поста высвечивалась картинка,например фото автомобиля(то есть как alt="" ). Есть ли таков плагин? Или с помощью чего это сделать можно? Заранее спасибо.

Поиск в текущей категории.

Как можно сделать так, чтоб под окошечком поиска был чекбокс "поиск в текущей директории" и поиск производился только в ней?

В родительской категории не отображаются записи из дочерних.

У меня вложенность категорий 1.
Допустим так:
Цвет -> Красный
Цвет -> Синий
В категориях синий и красный по 3 записи и когда я выбираю любую из них, то я все их вижу. Как сделать так, чтоб при выборе категории Цвет я видел все 6 записей?

Передача metakeys (MoreFields) из плагина TDO Forms.

Установил плагин MoreFields и настроил вот так:

Если заполняю поля при создании сообщения, то все отлично, но я бы хотел, чтоб эти поля заполняли пользователи при добавлении сообщения через TDO Forms.
Добавил в форму виджет CustomFields. Как сделать так, чтоб поля из него передавались в соответствующее поле плагина MoreFields?

Да, я знаю, что использую посоледнюю форму и шаблон ниже можно вставить эти поля в сообщения, но мне необходимо передавать именно в MoreFields.

Применение таблиц для шаблона

Есть ли какие-то отрицательные моменты, если делать каркас шаблона таблицей? Вот пример, сейчас делаю сайтик простенький в три колонки, сайдбары по бокам. После шапки делаю таблицу в три колонци куда размещаю все, как мне необходимо, закрываю таблицу, дальше идет футер. Я понимаю, что все прекрасно можно реализовать DIV-ами, но я переделываю уже готовый шаблон, и практически возникают проблемы – то одна колонка вниз убежит, то в других браузерах криво отображается и т.д. Поэтому решил не мучиться и сделал одну табличку. Вобщем, что неприятного в такой реализации?

Небольшая проблема с Ajax-comments

При добавлении комментария, он добавляется, но выше выпадает следующее сообщение

Warning: Missing argument 1 for AntiSpamImage::checkCode(), called in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 166 and defined in /home2/statist/public_html/wp-content/plugins/anti_spam_image.php on line 64

Warning: Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 207

Warning: Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 208

Warning: Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 209

При просмотре через Dreamweaver в этих строках файла ajax-comments нижеследующее

    setcookie('comment_author_' . COOKIEHASH, '', time() - 30000000, COOKIEPATH, COOKIE_DOMAIN);
    setcookie('comment_author_email_' . COOKIEHASH, '', time() - 30000000, COOKIEPATH, COOKIE_DOMAIN);
    setcookie('comment_author_url_' . COOKIEHASH, '', time() - 30000000, COOKIEPATH, COOKIE_DOMAIN);

В anti_spam_image.php:64 нижеследующий

    function checkCode($code){
        global $wpdb, $user_ID, $_POST, $_SESSION, $comment_type;

Последние записи в error_log

[15-Mar-2008 11:14:41] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 207
[15-Mar-2008 11:14:41] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 208
[15-Mar-2008 11:14:41] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 209
[15-Mar-2008 13:15:37] PHP Warning:  Missing argument 1 for AntiSpamImage::checkCode(), called in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 166 and defined in /home2/statist/public_html/wp-content/plugins/anti_spam_image.php on line 64
[15-Mar-2008 13:15:38] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 207
[15-Mar-2008 13:15:38] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 208
[15-Mar-2008 13:15:38] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home2/statist/public_html/wp-content/plugins/anti_spam_image.php:64) in /home2/statist/public_html/wp-content/plugins/ajax-comments/ajax-comments.php on line 209

Подскажите пожалуйста в чем может быть дело

Заранее благодарен

Длинные URL и список последних комментариев

Добрый день!

Обрезаю длинные URL в комментариях следующим плагином:

<?php
/*
Plugin Name: Chunk Urls for WordPress
Plugin URI: http://www.village-idiot.org/archives/2006/06/29/wp-chunk/
Description: This plugin shorten urls in comments so that they won’t break your site.
Author: whoo
Version: 2.0
Author URI: http://www.village-idiot.org/
*/

function make_chunky($ret)
{

// pad it with a space
$ret = ‘ ‘ . $ret;
$ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "$1<a href=’$2′ rel=’nofollow’>$2</a>", $ret);
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "$1<a href=’http://$2′ rel=’nofollow’>$2</a>", $ret);
//chunk those long urls
chunk_url($ret);
$ret = preg_replace("#(\s)([a-z0-9\-_.]+)@([^,< \n\r]+)#i", "$1<a href=\"mailto:$2@$3\">$2@$3</a>", $ret);
// Remove our padding..
$ret = substr($ret, 1);
return($ret);
}

function chunk_url(&$ret)
{

$links = explode(‘<a’, $ret);
$countlinks = count($links);
for ($i = 0; $i < $countlinks; $i++)
{
$link = $links[$i];

$link = (preg_match(‘#(.*)(href=")#is’, $link)) ? ‘<a’ . $link : $link;

$begin = strpos($link, ‘>’) + 1;
$end = strpos($link, ‘<‘, $begin);
$length = $end – $begin;
$urlname = substr($link, $begin, $length);

/*
* We chunk urls that are longer than 50 characters. Just change
* ’50’ to a value that suits your taste. We are not chunking the link
* text unless if begins with ‘http://’, ‘ftp://’, or ‘www.’
*/

$chunked = (strlen($urlname) > 50 && preg_match(‘#^(http://|ftp://|www\.)#is’, $urlname)) ? substr_replace($urlname, ‘…..’, 30, -10) : $urlname;
$ret = str_replace(‘>’ . $urlname . ‘<‘, ‘>’ . $chunked . ‘<‘, $ret);

}
}
remove_filter(‘comment_text’, ‘make_clickable’);
add_filter(‘comment_text’, ‘make_chunky’);
?>

Вывожу список последних комментариев в сайдбаре следующим плагином:

<?php
/*
Plugin Name: Recent Comments
Plugin URI: http://mtdewvirus.com/code/wordpress-plugins/
Description: Retrieves a list of the most recent comments.
Version: 1.18
Author: Nick Momrik
Author URI: http://mtdewvirus.com/
*/

function mdv_recent_comments($no_comments = 5, $comment_lenth = 5, $before = ‘<li>’, $after = ‘</li>’, $show_pass_post = false, $comment_style = 0) {
global $wpdb;
$request = "SELECT ID, comment_ID, comment_content, comment_author, comment_author_url, post_title FROM $wpdb->comments LEFT JOIN $wpdb->posts ON $wpdb->posts.ID=$wpdb->comments.comment_post_ID WHERE post_status IN (‘publish’,’static’) ";
if(!$show_pass_post) $request .= "AND post_password =” ";
$request .= "AND comment_approved = ‘1’ ORDER BY comment_ID DESC LIMIT $no_comments";
$comments = $wpdb->get_results($request);
$output = ”;
if ($comments) {
foreach ($comments as $comment) {
$comment_author = stripslashes($comment->comment_author);
if ($comment_author == "")
$comment_author = "anonymous";
$comment_content = strip_tags($comment->comment_content);
$comment_content = stripslashes($comment_content);
$words=split(" ",$comment_content);
$comment_excerpt = join(" ",array_slice($words,0,$comment_lenth));
$permalink = get_permalink($comment->ID)."#comment-".$comment->comment_ID;

if ($comment_style == 1) {
$post_title = stripslashes($comment->post_title);

$url = $comment->comment_author_url;

if (empty($url))
$output .= $before . $comment_author . ‘ on ‘ . $post_title . ‘.’ . $after;
else
$output .= $before . "<a href=’$url’ rel=’external’>$comment_author</a>" . ‘ on ‘ . $post_title . ‘.’ . $after;
}
else {
$output .= $before . ‘<strong>’ . $comment_author . ‘:</strong> <a href="’ . $permalink;
$output .= ‘" title="View the entire comment by ‘ . $comment_author.’">’ . $comment_excerpt.'</a>’ . $after;
}
}
$output = convert_smilies($output);
} else {
$output .= $before . "None found" . $after;
}
echo $output;
}
?>

В комментариях длинные URL обрезаются, а в списке последних – нет. Подскажите, пожалуйста, где поправить, чтобы длинные URL обрезались и в списке последних комментариев.

Как сделать ссылку на другой сайт

Подскажите, как можно в колонке "страница" в sidebar сделать ссылку которая будет вести на другой сайт. Что и где для этого нужно изменить?

Перевод плагинов.

Хочу перевести один плагин на русский язык. В файле языка строки идут примерно так:

msgid "<a href='%s'>My Amazon Wishlist</a>"
msgstr ""

msgid "Your Submissions Page"
msgstr ""

И так далее. Если я вместо английского текста вставляю русский, то ничего не происходит. Пожалуйста, поясните, как нормально переводить плагины?

Плагин Кто сейчас на сайте

Подскажите пожалуйста кто-нибудь. Есть ли такой Плагин Кто сейчас на сайте, т.е. Сколько гостей, ботов, пользователей и т.д.
Заранее всем благодарен

LJ кросспост 2

Добрый вечер. У меня после попытки обновить настройки плагина и експортировать все записи в ЖЖ выдает такую штуку: Something went wrong – 200 : Client error: Missing required argument(s) . Какие соображения будут у профи? (Версия 2.3.3 uk / LiveJournal Crossposter 2.0)
Спасибо.

Посоветуйте плагин для картинок

Посоветуйте плагин для картинок со следующим функционалом:

1) Позволяет добавлять галереи в пост;
2) Делает превьюшки;
3) Каждая превьюшка ведет на отдельную страницу с картинкой.

Такой плагин реализован здесь – http://www.kineda.com/scarlett-johansson-is-playboys-sexiest-celebrity-of-the-year/ – но что это за плагин понять сложно.

Спасибо.

часть навигации

Здравствуйте.

Я создал:
Страница А

  • подстраница 1
  • подстраница 2

Как сделать так, чтобы на странице А выводились ссылки на её подстраницы?
т.е. хотелось бы, чтобы при создании подстраниц для страницы А, на странице А выводилась бы навигация для ее подстраниц.
Спасибо

решение проблем с wp-cache

Всем привет!
Я вчера полдня игрался с установкой wp-cache на локальную машину, а потом на сервер. И вот решил поделиться опытом.

Локальная машина: Apache/1.3.33 (Win32) PHP/4.4.4 WordPress 2.3.3
Сервер: Apache/2.0.52 (CentOS) PHP/5.2.0 WordPress 2.0.10

Несколько слов о wp-cache. Это плагин который предназначен для кеширования динамических страниц. В настройках можно указывать список скриптов чью выдачу нужно кешировать и время жизни кеша.

Для того чтобы запустить плагин с полпинка нужно:
1. скачать плагин http://wordpress.org/extend/plugins/wp-cache/
2. создать папку wp-content/plugins/wp-cache и скопировать туда содержимое скачанного архива
3. активировать плагин
Это в идеале :). Если что то не получается рекомендую почитать README.txt из того же архива.

В общем не знаю у кого как а у меня это дело с полпинка не запустилось и пришлось искать причину.
На этом форуме я прочитал, что нужно в wp-config.php прописать.

define('WP_CACHE', true);

Прописываем. Когда эта константа установлена в TRUE, тогда движок подхватывает кеширующий скрипт:

// For an advanced caching plugin to use, static because you would only want one
if ( defined('WP_CACHE') )
    @include ABSPATH . 'wp-content/advanced-cache.php';

Для того чтобы переадресовать этот вызов на UNIX сервере достаточно создать символьную ссылку:

ln -s wp-content/plugins/wp-cache/wp-cache-phase1.php wp-content/advanced-cache.php

Но как быть если сервер не UNIX или если у нас недостаточно прав для создания символической ссылки? Создаем файл wp-content/advanced-cache.php, который подключает plugins/wp-cache/wp-cache-phase1.php

<?php
require_once(ABSPATH . 'wp-content/plugins/wp-cache/wp-cache-phase1.php');
?>

Точно не помню, но помоему именно в этот момент я увидел ошибку подключения. Проблема была в том что в ABSPATCH были и обратные и прямые слэши. Для того чтобы это поправить я в wp-config.php немного изменил определение константы ABSPATCH:

$dirpath = str_replace('\\','/',dirname(__FILE__).'/');
define('ABSPATH', $dirpath);

Вроде вызов переадресовали, но нехватает конфига. Переименовываем (или копируем) файл wp-content/plugins/wp-cache/wp-cache-config-sample.php в wp-content/wp-cache-config.php.
Все, порядок. Заходим в админку, активируем плагин и переходим на страницу настройки/wp-cache. Она пустая… В файле wp-content/plugins/wp-cache/cache.php есть функция проверки существования символической ссылки – wp_cache_check_link(). Немного меняем код функции:

function wp_cache_check_link() {
    global $wp_cache_link, $wp_cache_file;

    if (file_exists($wp_cache_link)) {
        return true;
    }
    
    if ( basename(@readlink($wp_cache_link)) != basename($wp_cache_file)) {
        @unlink($wp_cache_link);
        if (!@symlink ($wp_cache_file, $wp_cache_link)) {
            echo "<code>advanced-cache.php</code> link does not exist<br />";
            echo "Create it by executing: <br /><code>ln -s $wp_cache_file $wp_cache_link</code><br /> in your server<br />";
            return false;
        }
    }
    return true;
}

Теперь она сначала проверяет существование файла, а потом ссылки. Все. Админка должна заработать. Видим надпись "WP-Cache is Disabled" -> включаем wp-cache "Enable it" (или можно прописать $cache_enabled = true; в wp-content/wp-cache-config.php).

И напоследок ещё несколько условий необходимых для работы плагина:
– необходимо отключить поддержку g-zip сжатия в настройки/чтение
– на Unix серверах должен быть доступ к записи на файл wp-content/wp-cache-config.php (чтобы менять настройки кеширования из админки) и на папку wp-content/cache (сюда записываются все закешированые файлы).

Должно работать. Правда у меня была ещё одна проблема – страницы кешировались, но с кеша не читались, каждый раз генерировались заново. Оказалось что кеш выводиться функцией readfile, которая на сервере была отключена в целях безопасности. Вот этот кусок кода:

            if(!@readfile ($cache_file)) 
                return;

Тут используется оператор подавления ошибок, поэтому очень сложно найти причину не зная как работает скрипт. Решается проблема заменой этого кода на:

            if (file_exists($cache_file)) {
                $content = file_get_contents($cache_file);
                echo $content;
            } else {
                return;
            }

Надеюсь эта тема кому то поможет ;).

Anonymous
Отправить
Ответ на: