Seo оптимизация
29.04.2010Голосование
| Тип | Вопрос |
| Состояние | Исправлено |
| Приоритет | Средний |
| Версия | 3.5 |
| Система | * |
| Воспроизводимость | Нет |
| Автор | |
| Исполнитель | Блоголётчик |
Даже незнаю к какой категории отнести или вопрос или задача или запрос на фичу, потому как тут все вместе.
Блоголет суперский движок и довольно хорошо оптимизирован для продвижения проектов по ключевым запросам, все нужное для поисковиков прописано простым кодом а всякие фишки для пользователей на
скриптах, а поисковики любят простой код и быстроту загрузки страниц, не зря гоогле уже начал ранжировать сайты и по скорости загрузки. Не зря за 2 недели на блоголете и с помошью подбора правильных
ключевиков, по одному из них мой сайт в выдаче уже на 5 месте. Ну это так.. лирика.
Что я хочу - хочу выжать из блоголета максимум внутренней оптимизации, ведь за счет ее мы сможем поднять себе PR только используя внутренние резервы. Для этого надо немного изменить структуру
сайта и тут мне нада и советы и даже помощь, ну я думаю, что это ведь всем на благо.
Вот какие изменения были бы желательны:
- Главная страница
Вывод свежих новостей абсолютно ненужен ибо он дублирует ссылки и так свежие новости показываются на главной их ведь 10.
Вместо него нада вывести виджет с рандомными новостями, для вывода рандомных нада только переделать параметр запроса к БД плагина предидуших записей с
order by posted desc limit 10
на
order by posted rand limit 10
а вот для файловой версии тут мне знаний уже нехватает...
(во первых они будут выводится каждый раз новым списком поэтому поисковые боты будут чаще заглядывать ибо содержимое то изменилось)
Выводим категории и теги (это все есть все нормально)
Ссылки выводить на главной нежелательно, поскольку именно она будет иметь самый большой вес PR, (зачем им делиться), их желательно поместить на отдельную страницу с, переход на нее сделать с главной и на этой странице вывести как можно больше внутренних ссылок (виджеты и свежих новостей и рандомных, так больше веса останется при нас) ну и естественно обратный линк на главную должен быть.
- Внутренняя страница
Тут то как раз надо выводить свежие записи (для тех кто пришел с поисковиков), похожие записи, и ранние записи (поскольку мы в статьях иногда тоже даем ссылки на внешние ресурсы это тоже поможет удержать больше веса при нас)
Ну и конечно линк на главную (внутренние можно перелинковать с главной или добавив ссылку в футер, или как я сделал, добавив главную в меню)
А вот теперь вопрос как это все реализовать?
Насколько я понимаю имеющаяся система аякса такой разносторонний вывод виджетов сделать не позволит, надо или ее всю переписывать или вырубать, подключать JQuery, и писать скрипты для нее.
Что кто посоветует?
(Такая оптимизация позволит отдавать внешним ссылкам минимум, веса наших страниц весомо поднять PR нашей главной а она в свою очередь потянет за собой внутренние)
← Ранее Обновления с версий линейки 2.xx
Позже Мелкая неприятность с SQL →
Комментарии (7) на запись “Seo оптимизация”
Оставить комментарий
Есть плагин обратного порядка анонсов для главной - смотри в его сторону, можно подправить нужным тебе способом и назвать по новому, чтобы решить твою задачу по случайному выводу.
А далее не совсем понял. Для главной можно устанавливать индвидуальные виджеты (в админке добавить виджеты только на главную отсутствуе функция,, но это возможно программным путем) то можно делать с виджетами на главной все, что угодно, но тогда виджеты главной и остального сайта не будут иметь связи.
Все что ты перечислил (плагины похожих, ранних, свежих постов) уже есть, хочется линков в этих виджетах - откклчи аякс. Собствено в чем проблема? Пока проблем я не увидел - опиши другими словами.
Вот сделал чтоб работал вывод случайной новости randomposts.php
<?php
/**
* Lite Publisher
* Copyright (C) 2010 Vladimir Yushko http://litepublisher.com/
* Dual licensed under the MIT (mit.txt)
* and GPL (gpl.txt) licenses.
**/
class trandomposts extends tplugin {
public static function instance() {
return getinstance(__class__);
}
public function onsitebar(&$content, $index) {
if ($index > 0) return;
$links = $this->getrandomposts($index);
if ($links == '') return;
$theme = ttheme::instance();
$widget = $theme->getwidget(tlocal::$data['default']['random'], $links, 'widget', $index);
$content = $widget . $content;
}
private function getrandomposts($index) {
$template = ttemplate::instance();
$post = $template->context;
$posts = tposts::instance();
}
}//class
?>
Все красиво выводится каждый раз по новому, ну конечно для БД версии только про файлы незнаю.
Теперь задача где найти чтобы у этого виджета заголовок выводился, ато щас без заголовка выводит.
И как этот плагин поменять местами со стандартным выводом Свежих записей, чтобы свежие выводились внутри поста а Случайные на главной.
Попробовал выключить в админке галочку чтобы на главной другие виджеты , теперь виджеты вообще пропали с главной, списка не выводится а обратно показывать все виджеты не хочет сохранять :(( ппц (на локалке)
Но список с виджетами невыводит для изменеия, жалко что все виджеты в админку не прописываются, такие как похожие предыдушие записи.
Сначала про похожие записи не впосте - а на что записи тогда дложны быт похожи? Плагин похожих/старых записей выводит индивдуальный контент в каждом посте.
Что ксается главной - рекомендую настоятельно посмотреть плагин обратного порядка постов на главной. Если хочется добавить уникальный виджет на главной, то рекомендую следующее: в своем класс наледнике перекрыть метод
public function getsitebar() {
$result = parent::getsitebar();
$links = $this->getrandomposts($index);
if ($links != '') return;
$widgets = twidgets::instance();
$theme = ttheme::instance();
$result .= $theme->getwidget('Заголовок виджета', $links, 'widget', $widgets->curent - 1);
}
return $result;
}
Давно не занимался блогом, не было времени, но хоть убей не получается у меня вывести случайные записи на главной, поскольку не программист пытался по разному методом тыка, то пхп ошибку выводит то просто не показывает. Вот один из моих вариантов randomposts.php
class thomepageRandomposts extends thomepage {
public static function instance() {
return getinstance(__class__);
}
public function getsitebar() {
$result = parent::getsitebar();
$links = $this->getrandomposts($index);
if ($links != '') return;
$widgets = twidgets::instance();
$theme = ttheme::instance();
$result .= $theme->getwidget('Случайные новости', $links, 'widget', $widgets->curent - 1);
return $result;
}
private function getrandomposts($index) {
$template = ttemplate::instance();
$post = $template->context;
$posts = tposts::instance();
if (dbversion) {
$items = $posts->select("status = 'published' and posted ",' order by rand() limit 10');
} else {
$arch = array_keys($posts->archives);
$i = array_search($post->id, $arch);
if (!is_int($i)) return '';
$items = array_slice($arch, $i + 1, 10);
}
if (count($items) == 0) return '';
$theme = ttheme::instance();
$tml = $theme->getwidgetitem('widget', $index);
$result = '';
foreach ($items as $id) {
$post = tpost::instance($id);
ttheme::$vars['post'] = $post;
$result .= sprintf($tml, $post->link, $post->title);
}
return sprintf($theme->getwidgetitems('widget', $index), $result);
}
function install() {
litepublisher::$urlmap = turlmap::instance();
if (dbversion) {
$item = litepublisher::$urlmap->db->finditem("url = '/'");
litepublisher::$urlmap->setvalue($item['id'], 'class', get_class($this));
} else {
litepublisher::$urlmap->items['/']['class'] = get_class($this);
litepublisher::$urlmap->save();
}
}
function uninstall() {
$parent = get_parent_class($this);
litepublisher::$urlmap = turlmap::instance();
if (dbversion) {
$item = litepublisher::$urlmap->db->finditem("url = '/'");
litepublisher::$urlmap->setvalue($item['id'], 'class', $parent);
} else {
litepublisher::$urlmap->items['/']['class'] = $parent;
litepublisher::$urlmap->save();
}
}
}//class
Опять же подозреваю даже при работающем варианте виджет будет отображаться на всех страницах (и не будет аяксовым ибо не входит в число стандартных :(( ), а нужен он только на главной вместо виджета последних записей (ну зачем дублировать ссылки на последние записи, они и так есть на главной в заголовках анонсов + уже дублируются ссылкой под каждым постом, типа: "читать полностью", или еше как нибудь - зависит от темы ( и выводится как раз ровно 10 как и в виджете), хотя поисковики конечно склеют одинаковые ссылки, но получается просто не рациональное использование места)
В свою очередь виджет свежих записей нужен на самой странице новости, чтобы информировать посетителей пришедших из поисковиков по конкретному запросу о свежих новостях на сайте.
Вот и до сих пор ломаю голову как это все реализовать. Самый простой способ индивидуализировать вывод виджетов, по моему мнению - это включить отдельный шаблон single.tml ( а в идеале для полной свободы дизайна и admin.tml) в движок, тогда вовсе отпала бы необходимость в аяксовых виджетах, и каждый дизайнер и сеошник смог бы проще настроить вывод всего что именно ему необходимо только там где это надо по дизайну или в зависимости от тематики проэкта, простым редактированием нужного шаблона.
Подозреваю что это потребует больших изменений в ядре... и врядли ты на это подпишешся.
Да есть конечно как вариант изменить тему главной страницы в админке, а вот как поведет себя аякс в этом случае я незнаю и пока не пробовал, да и для того чтобы таким способом индивидуализировать к примеру и админку и главную придется создавать еще 2 отдельные темы специально только для вывода этих страниц... сложно както