Тема: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

можно ли и как задать значения по умолчанию для полей Meta title, Meta keywords и Meta description
например в Meta title заглавие новости, а в Meta keywords и Meta description краткое содержание новости.

Яндекс стал страницы "для печати"  в приоритете выдавать...


спасибо.



Strawberry 1.1.1 MySQL


имею ввиду поля плагина Meta tags, что в форме добавления новости.

спасибо

Отредактировано anz (04 Sep 2007 04:15:33)

Беспокойство - это неправильное употребление воображения.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

anz, тогда вам плагин Meta tags вообще не нужен. Просто пишете на странице где-нибудь между заголовками <head> и </head> примерно такое:

<?
if ($_GET['id']) {
$news = $sql->select(array('table' => 'news'));
$story = $sql->select(array('table'  => 'story'));

echo '<title>'.$news[$_GET['id']-1]['title'].'</title>';
echo '<meta name="keywords" content="'.strip_tags($story[$_GET['id']-1]['short']).'">';
echo '<meta name="description" content="'.strip_tags($story[$_GET['id']-1]['short']).'">';

} ?>

Тогда для открытой полной новости будут формироваться нужные вам параметры. Еще нужно предусмотреть, чтобы формировались тайтл, кейворды и дескриптор для тех случаев, когда полная новость не открыта. Напишете

else {...формирование "общих" title, keywords, description...}

и будет порядок. Ну я думаю принцип ясен и дальше вы справитесь сами.

Хотя, я бы не стал в теге <meta name="keywords"... прописывать тоже текст короткой новости. У ключевых слов своя задача. Лучше использовать вывод ключевых слов для данной новости (по тому же принципу).

А у плагина Meta tags свое предназначение и лучше в его работу не вмешиваться.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

ANT-Soft пишет:

...

предложенный код выводит пустые значения

<title></title><meta name="keywords" content=""><meta name="description" content="">

ANT-Soft пишет:

Хотя, я бы не стал в теге <meta name="keywords"... прописывать тоже текст короткой новости. У ключевых слов своя задача. Лучше использовать вывод ключевых слов для данной новости (по тому же принципу).

не понял про - (по тому же принципу)

впринципе верно, но в день от 50 до 100 новостей, запарюсь в ручную
кейворды набирать...

спасибо.

Беспокойство - это неправильное употребление воображения.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

anz, предложенный код работает для открытой полной новости, причем только если в командной строке указан id-номер открытой новости (то есть ЧПУ не задействованы). Хотя, если у вас выводится это:

<title></title><meta name="keywords" content=""><meta name="description" content="">

то на $_GET['id'] ветвление точно срабатывает. Правда, я на textSQL проверял, но это не должно иметь значения.

Впрочем, это только принцип решения задачи, а не само ее решение.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

ANT-Soft пишет:

anz, предложенный код работает для открытой полной новости, причем только если в командной строке указан id-номер открытой новости (то есть ЧПУ не задействованы). Хотя, если у вас выводится это:

<title></title><meta name="keywords" content=""><meta name="description" content="">

то на $_GET['id'] ветвление точно срабатывает. Правда, я на textSQL проверял, но это не должно иметь значения.

Впрочем, это только принцип решения задачи, а не само ее решение.

для открытой полной новости, а ЧПУ как раз включен - post = "{categories}/{title}.html"

уже долго бьюсь, но ни чего не получается...

Яндекс с чего то начал в выдачи поиска выдавать ссылки на страницу печати новости, а не на саму новость sad

спасибо.

я думал проще это в поля плагина Meta tags по умолчанию вбить,  наподобие значений по умолчанию для дополнительных полей

Отредактировано anz (04 Sep 2007 10:44:03)

Беспокойство - это неправильное употребление воображения.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

anz, с включенным ЧПУ работать и не должно, потому что все основано на передаче id-номера открытой новости, то есть $_GET['id']. В вашем варианте ЧПУ этот параметр не передается.

Попробуйте еще воспользоваться генератором кейвордов: http://strawberry.goodgirl.ru/forum/viewtopic.php?id=15

А про Яндекс - вопросы к Яндексу.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

ANT-Soft пишет:

anz, с включенным ЧПУ работать и не должно, потому что все основано на передаче id-номера открытой новости, то есть $_GET['id']. В вашем варианте ЧПУ этот параметр не передается.

Попробуйте еще воспользоваться генератором кейвордов: http://strawberry.goodgirl.ru/forum/viewtopic.php?id=15

А про Яндекс - вопросы к Яндексу.

Вопрос остается открытым... так как и при выключенном ЧПУ не работает, так же выводит пустые значения...
люди есть еще решение по теме...как только не пробовал...:(

спасибо.

P.S. а вопросов к яндексу у меня нет... его упамянул для описание проблемы, потому, что  он стал выдавать по поиску версии страниц для печати моего сайта (только их)...а там как раз титл в шаблоне прописан, вот из за этого вся проблема, так как я титлы и meta name ни когда не прописывал... и в ручную их все прописать повеситься можно их у меня на сайтах 200 000 тыс страниц.

еще раз спасибо.

Отредактировано anz (22 Sep 2007 07:08:45)

Беспокойство - это неправильное употребление воображения.

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

Я, конечно, понимаю, что теме 3 года, но всё равно это не повод не закрыть её.

Итак, при включенном ЧПУ $_GET['id'] , как я понимаю, равен url.

Тогда получается такая конструкция:

<?
$query = 'SELECT title FROM префикс_news WHERE url="'.$_GET['id'].'"';
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) { 
        echo $row["title"];
    } 
?>

префикс указать свой.

Может кто-то подскажет как автоматом задать префикс?

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

$query = 'SELECT title FROM '.$config['dbprefix'].'news WHERE url="'.$_GET['id'].'"';
Здесь молодость бродит крылато, и старость не клонит голов...
Демо площадка Strawberry 1.2 - заходим и тестируем!

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

Miksar, исправь, пожалуйста:
$config['dbprefix']

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

Исправил wink

Здесь молодость бродит крылато, и старость не клонит голов...
Демо площадка Strawberry 1.2 - заходим и тестируем!

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

Strawberry 1.1.1 MySQL, ЧПУ.

Вышеуказанный код работает почему-то только для таблицы cute_news.
А вот если написать для description код:

<?
$query = 'SELECT short FROM cute_story WHERE url="'.$_GET['id'].'"';
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)) { 
        echo $row["short"];
    } 
?>

Тогда в коде страницы вместо short появляется следующее:

<!--error--><br />
<b>Warning</b>:  mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in <b>Y:\home\mironovka.kiev.ua\www\tlog\1.php</b> on line <b>11</b><br />
<script language=JavaScript src='/denwer/errors/phperror_js.php'></script> ">

Строка 11 в коде -

while ($row = mysql_fetch_assoc($result)) {

Re: значения по умолчанию для полей Meta title, Meta keywords и Meta descr

Эта ошибка красноречиво сообщает нам о том, что нифигашеньки с БД мы не взяли и обрабатывать, соответственно, нечего. И на то есть очень веская причина - если мы откроем БД, то в таблице *_story нет поля url. Вместо этого там есть поле post_id.

Что мы имеем? Надо писать 2 запроса:
- первый запрос, чтобы определить id новости по полю url
- второй запрос, чтобы достать данные из таблицы *_story через post_id

Жгите! smile