X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Keywordы для постов на WP
MusTank
MusTank
Topic Starter сообщение 14.7.2012, 20:52; Ответить: MusTank
Сообщение #1


Участник
***

Группа: User
Сообщений: 148
Регистрация: 23.3.2008
Из: Где-то в Украине
Поблагодарили: 35 раз
Репутация:   9  


Приветствую. Ищу решение такого задания:
Автоматически проставить во всех, уже созданных, постах кейворды по маске. Например: %title% отзывы, %title обзор и т.д.
Руками делать - не выход, т.к. постов не мало.
Перебрал несколько СЕО-плагинов - такой функции так и не нашёл sad.gif

Может кто сталкивался или догадывается, как можно выйти из ситуации?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serkaz
serkaz
сообщение 14.7.2012, 21:05; Ответить: serkaz
Сообщение #2


Участник
***

Группа: User
Сообщений: 203
Регистрация: 15.2.2012
Поблагодарили: 60 раз
Репутация:   10  


Я правильно понял, что если запись "Вася Пупкин", то ей надо добавить meta keywords "Вася Пупкин обзор"?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MusTank
MusTank
Topic Starter сообщение 14.7.2012, 21:07; Ответить: MusTank
Сообщение #3


Участник
***

Группа: User
Сообщений: 148
Регистрация: 23.3.2008
Из: Где-то в Украине
Поблагодарили: 35 раз
Репутация:   9  


(serkaz @ 14.7.2012, 19:05) *
Я правильно понял, что если запись "Вася Пупкин", то ей надо добавить meta keywords "Вася Пупкин обзор"?

Да, всё правильно.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kronos
kronos
сообщение 14.7.2012, 21:09; Ответить: kronos
Сообщение #4


Белый веб-мастер
*******


Группа: Active User
Сообщений: 4703
Регистрация: 10.2.2009
Из: Харьков
Поблагодарили: 2629 раз
Репутация:   327  


Думаю проще будет сделать экспорт таблицы, и пошаманить с excel или notepad++ (через csv)


--------------------


Поблагодарили: (2)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serkaz
serkaz
сообщение 14.7.2012, 22:44; Ответить: serkaz
Сообщение #5


Участник
***

Группа: User
Сообщений: 203
Регистрация: 15.2.2012
Поблагодарили: 60 раз
Репутация:   10  


А SEO плагин какой стоит?

Создаёте файл, например, vasyapupkin.php.

Пишете в нём:
<?
include('wp-blog-header.php');

$keywords = "здесь через запятую ваши ключевики";
$keywords = explode(",",$keywords);

$posts = get_posts('&numberposts=-1');

foreach($posts as $post){
    setup_postdata($post);
    $title = get_the_title();
    $current_keywords = get_post_meta($post->ID,"keywords",true);
    $keys = array();
    foreach($keywords as $key){
        $keys[] = $title.' '.$key;
    }
    $keys = implode(",",$keys);
    if(!empty($current_keywords)){
        update_post_meta($post->ID, 'keywords', $current_keywords.', '.$keys);
    } else {
        add_post_meta($post->ID, 'keywords', $keys);
    }
    unset($keys);
}
wp_reset_postdata();
?>


Кладёте в корень сайта.

Запускаете - адрессайта.ру/vasyapupkin.php

Что делает данная штука? Для абсолютно всех постов, проверяется есть ли уже keywords у поста, если есть, то к текущим ключевикам, добавляет нужные ключевики, если у поста кейвордс не заполнены, то просто добавляет их.

В данном случае скрипт проставляет кейвордсы для всех записей при желании это можно сделать, только для постов из определённых рубрик.

Работу скрипта не гарантирую, в боевых условиях не проверял, если будете использовать - сделайте дамп БД.

Сообщение отредактировал serkaz - 14.7.2012, 22:49


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MusTank
MusTank
Topic Starter сообщение 15.7.2012, 0:45; Ответить: MusTank
Сообщение #6


Участник
***

Группа: User
Сообщений: 148
Регистрация: 23.3.2008
Из: Где-то в Украине
Поблагодарили: 35 раз
Репутация:   9  


(kronos @ 14.7.2012, 19:09) *
Думаю проще будет сделать экспорт таблицы, и пошаманить с excel или notepad++ (через csv)

БД слишком грязное, т.к. используется масса дополнений, а кейворды указаны в рядах плагина "All in One SEO Pack" по нумерациям постов, без титлов и чпу.
Сутками чистить и разгребать придётся wacko.gif

(serkaz @ 14.7.2012, 20:44) *
А SEO плагин какой стоит?

Создаёте файл, например, vasyapupkin.php.

Пишете в нём:
<?
include('wp-blog-header.php');

$keywords = "здесь через запятую ваши ключевики";
$keywords = explode(",",$keywords);

$posts = get_posts('&numberposts=-1');

foreach($posts as $post){
    setup_postdata($post);
    $title = get_the_title();
    $current_keywords = get_post_meta($post->ID,"keywords",true);
    $keys = array();
    foreach($keywords as $key){
        $keys[] = $title.' '.$key;
    }
    $keys = implode(",",$keys);
    if(!empty($current_keywords)){
        update_post_meta($post->ID, 'keywords', $current_keywords.', '.$keys);
    } else {
        add_post_meta($post->ID, 'keywords', $keys);
    }
    unset($keys);
}
wp_reset_postdata();
?>


Кладёте в корень сайта.

Запускаете - адрессайта.ру/vasyapupkin.php

Что делает данная штука? Для абсолютно всех постов, проверяется есть ли уже keywords у поста, если есть, то к текущим ключевикам, добавляет нужные ключевики, если у поста кейвордс не заполнены, то просто добавляет их.

В данном случае скрипт проставляет кейвордсы для всех записей при желании это можно сделать, только для постов из определённых рубрик.

Работу скрипта не гарантирую, в боевых условиях не проверял, если будете использовать - сделайте дамп БД.


Сейчас стоит "All in One SEO Pack".
Спасибо, но он, к сожалению, почему-то возвращает только внутреннюю ошибку сервера.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serkaz
serkaz
сообщение 15.7.2012, 12:37; Ответить: serkaz
Сообщение #7


Участник
***

Группа: User
Сообщений: 203
Регистрация: 15.2.2012
Поблагодарили: 60 раз
Репутация:   10  


<?
include('wp-blog-header.php');

$keywords = "обзор, отзыв";
$keywords = explode(", ",$keywords);

$posts = get_posts('&numberposts=-1&post_status=publish,draft');

foreach($posts as $post){
    setup_postdata($post);
    $title = get_the_title();
    $current_keywords = get_post_meta($post->ID,"_aioseop_keywords",true);
    $keys = array();
    foreach($keywords as $key){
        $keys[] = $title.' '.$key;
    }
    $keys = implode(", ",$keys);
    if(!empty($current_keywords)){
        update_post_meta($post->ID, '_aioseop_keywords', $current_keywords.', '.$keys);
    } else {
        add_post_meta($post->ID, '_aioseop_keywords', ''.$keys.'', true);
    }
    unset($keys);
}
wp_reset_postdata();
?>


Обновил код для All in one SEO pack. Проверил - работает. Если будет выдавать ошибку, то это скорее всего из-за большого количества записей. Сколько у вас записей?

Проверьте кодировку файл. Файл должен быть в кодировке utf-8 без ВОМ.

Сообщение отредактировал serkaz - 15.7.2012, 12:25
Прикрепленные файлы
Прикрепленный файл  vasyapupkin.zip ( 440 байт ) Кол-во скачиваний: 8
 


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MusTank
MusTank
Topic Starter сообщение 15.7.2012, 13:42; Ответить: MusTank
Сообщение #8


Участник
***

Группа: User
Сообщений: 148
Регистрация: 23.3.2008
Из: Где-то в Украине
Поблагодарили: 35 раз
Репутация:   9  


(serkaz @ 15.7.2012, 10:37) *
<?
include('wp-blog-header.php');

$keywords = "обзор, отзыв";
$keywords = explode(", ",$keywords);

$posts = get_posts('&numberposts=-1&post_status=publish,draft');

foreach($posts as $post){
    setup_postdata($post);
    $title = get_the_title();
    $current_keywords = get_post_meta($post->ID,"_aioseop_keywords",true);
    $keys = array();
    foreach($keywords as $key){
        $keys[] = $title.' '.$key;
    }
    $keys = implode(", ",$keys);
    if(!empty($current_keywords)){
        update_post_meta($post->ID, '_aioseop_keywords', $current_keywords.', '.$keys);
    } else {
        add_post_meta($post->ID, '_aioseop_keywords', ''.$keys.'', true);
    }
    unset($keys);
}
wp_reset_postdata();
?>


Обновил код для All in one SEO pack. Проверил - работает. Если будет выдавать ошибку, то это скорее всего из-за большого количества записей. Сколько у вас записей?

Проверьте кодировку файл. Файл должен быть в кодировке utf-8 без ВОМ.


Большое спасибо!
Обрабатывает 3к постов за 2-3 секунды.
Работает именно так, как нужно, но в некоторые записи, в которых уже были такие ключи, дописывает их ещё раз.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serkaz
serkaz
сообщение 15.7.2012, 14:02; Ответить: serkaz
Сообщение #9


Участник
***

Группа: User
Сообщений: 203
Регистрация: 15.2.2012
Поблагодарили: 60 раз
Репутация:   10  


но в некоторые записи, в которых уже были такие ключи, дописывает их ещё раз.


нужно дописывать условия, если нужно, можно допилить.

<?
include('wp-blog-header.php');

$posts = get_posts('&numberposts=-1&post_status=publish,draft');

foreach($posts as $post){
    setup_postdata($post);
    $current_keywords = get_post_meta($post->ID,"_aioseop_keywords",true);
    if(!empty($current_keywords)){
        $current_keywords = str_replace(", ",",",$current_keywords);
        $current_keywords = explode(",",$current_keywords);
        $current_keywords = array_unique($current_keywords);
        $current_keywords = implode(", ",$current_keywords);
        update_post_meta($post->ID, '_aioseop_keywords', $current_keywords);
    }
    unset($current_keywords);
}
wp_reset_postdata();
?>


Вот код. Удалит повторяющиеся keywords. Новый файл создайте и запустите.

Сообщение отредактировал serkaz - 15.7.2012, 14:03


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MusTank
MusTank
Topic Starter сообщение 15.7.2012, 18:12; Ответить: MusTank
Сообщение #10


Участник
***

Группа: User
Сообщений: 148
Регистрация: 23.3.2008
Из: Где-то в Украине
Поблагодарили: 35 раз
Репутация:   9  


(serkaz @ 15.7.2012, 12:02) *
нужно дописывать условия, если нужно, можно допилить.

<?
include('wp-blog-header.php');

$posts = get_posts('&numberposts=-1&post_status=publish,draft');

foreach($posts as $post){
    setup_postdata($post);
    $current_keywords = get_post_meta($post->ID,"_aioseop_keywords",true);
    if(!empty($current_keywords)){
        $current_keywords = str_replace(", ",",",$current_keywords);
        $current_keywords = explode(",",$current_keywords);
        $current_keywords = array_unique($current_keywords);
        $current_keywords = implode(", ",$current_keywords);
        update_post_meta($post->ID, '_aioseop_keywords', $current_keywords);
    }
    unset($current_keywords);
}
wp_reset_postdata();
?>


Вот код. Удалит повторяющиеся keywords. Новый файл создайте и запустите.


Ещё раз спасибо, всё сработало идеально happy.gif
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Найду для вас домены
14 MakDonald 2423 Сегодня, 0:46
автор: ponita
Открытая тема (нет новых ответов) Ищу платёжный агрегатор для работы с физ. лизами (не ИП)
17 SergeiVL 2416 Вчера, 20:43
автор: BestExchangers
Открытая тема (нет новых ответов) Чем сжимать картинки для сайта без потери качества
1st-finstep.ru - Заработок в сети и методы продвижения сайта
5 komarik_vlad 641 Вчера, 20:06
автор: komarik_vlad
Открытая тема (нет новых ответов) Разработка баннеров для интернет-рекламы: html5, flash, gif и jpg
22 twildd 5909 Вчера, 19:02
автор: twildd
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлы> Хостинг для чайников и спецов со сверхскоростным саппортом от HOSTiQ.com.ua
Хостинг, VIP-хостинг, Реселлинг, VPS, Выделенные серверы
45 HOSTiQ 15683 Вчера, 18:42
автор: HOSTiQ


 



RSS Текстовая версия Сейчас: 12.12.2017, 1:25
Дизайн