Мета теги для новых страниц
|
back1919 |
Опубликовано 11.11.2012 19:02
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
Создаю руками в корне сайта новую страницу "moscow_student_news.php" (http://bestvuz.ru...t_news.php) , хочу прописать в нее ключевики и описание. код страницы как и "index.php":
Код <?php
require_once "maincore.php";
require_once THEMES."templates/header.php";
require_once THEMES."templates/footer.php";
?>
Ну я удалил строчку " Код require_once THEMES."templates/header.php";
", и вставил код header.php в новую страницу, соответственно прописав туда желаемые теги:
Код <?php
require_once "maincore.php";
if (!defined("IN_FUSION")) { die("Access Denied"); }
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEME."theme.php";
require_once THEMES."templates/render_functions.php";
if ($settings['maintenance'] == "1" && ((iMEMBER && $settings['maintenance_level'] == "1"
&& $userdata['user_id'] != "1") || ($settings['maintenance_level'] > $userdata['user_level'])
)) {
redirect(BASEDIR."maintenance.php");
}
if (iMEMBER) {
$result = dbquery(
"UPDATE ".DB_USERS." SET user_lastvisit='".time()."', user_ip='".USER_IP."', user_ip_type='".USER_IP_TYPE."'
WHERE user_id='".$userdata['user_id']."'"
);
}
echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n";
echo "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='".$locale['xml_lang']."' lang='".$locale['xml_lang']."'>\n";
echo "<head>\n<title>Мой заголовок</title>
<meta name='description' content='Мое описание' />
<meta name='keywords' content='мои ключевики' />
\n";
?>
<?
echo "<meta http-equiv='Content-Type' content='text/html; charset=".$locale['charset']."' />\n";
echo "<link rel='stylesheet' href='".THEME."styles.css' type='text/css' media='screen' />\n";
if (file_exists(IMAGES."favicon.ico")) { echo "<link rel='shortcut icon' href='".IMAGES."favicon.ico' type='image/x-icon' />\n"; }
if (function_exists("get_head_tags")) { echo get_head_tags(); }
echo "<script type='text/javascript' src='".INCLUDES."jquery/jquery.js'></script>\n";
echo "<script type='text/javascript' src='
".INCLUDES."jscript.js'></script>\n";
echo "</head>\n<body>\n";
require_once THEMES."templates/panels.php";
ob_start();
require_once THEMES."templates/footer.php";
?>
Итог- в коде страницы Тайтл мой, а вот ключевики и описание...пустые. Как так получается ума не приложу. На сайте установлена разве что "мета-тег панель", в главных настройках описание пустое, подскажите что может быть. Спасибо. |
|
|
|
Alex |
Опубликовано 11.11.2012 19:52
|
Администратор
Группа тестеров
Персонал сайта
Сообщений: 1270
Зарегистрирован: 07.11.2010 13:05
|
Если надо просто добавить слова к существующему значению описания и/или ключевиков, то надо в тексте странички прописать php-код:
<?php
add_to_meta("description", ", Описание страницы");
add_to_meta("keywords", ", Ключевые слова");
?>
А если надо заменить значение, тогда надо так:
<?php
set_meta("description", "Описание страницы");
set_meta("keywords", "Ключевые слова");
?>
Таким же способом можно манипулировать заголовками. Функции, соответственно, add_to_title() и set_title() |
|
|
|
back1919 |
Опубликовано 11.11.2012 20:31
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
Alex, Большое спасибо. Только вот ничего не изменилось(
Код <?php
require_once "maincore.php";
if (!defined("IN_FUSION")) { die("Access Denied"); }
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEME."theme.php";
require_once THEMES."templates/render_functions.php";
if ($settings['maintenance'] == "1" && ((iMEMBER && $settings['maintenance_level'] == "1"
&& $userdata['user_id'] != "1") || ($settings['maintenance_level'] > $userdata['user_level'])
)) {
redirect(BASEDIR."maintenance.php");
}
if (iMEMBER) {
$result = dbquery(
"UPDATE ".DB_USERS." SET user_lastvisit='".time()."', user_ip='".USER_IP."', user_ip_type='".USER_IP_TYPE."'
WHERE user_id='".$userdata['user_id']."'"
);
}
echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n";
echo "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='".$locale['xml_lang']."' lang='".$locale['xml_lang']."'>\n";
echo "<head>\n<title>Все университеты и институты Москвы. Студенческие новости.</title>
\n";
add_to_meta("description", "описание");
set_meta("keywords", "Ключевые слова");
?>
<?
echo "<meta http-equiv='Content-Type' content='text/html; charset=".$locale['charset']."' />\n";
echo "<link rel='stylesheet' href='".THEME."styles.css' type='text/css' media='screen' />\n";
if (file_exists(IMAGES."favicon.ico")) { echo "<link rel='shortcut icon' href='".IMAGES."favicon.ico' type='image/x-icon' />\n"; }
if (function_exists("get_head_tags")) { echo get_head_tags(); }
echo "<script type='text/javascript' src='".INCLUDES."jquery/jquery.js'></script>\n";
echo "<script type='text/javascript' src='".INCLUDES."jscript.js'></script>\n";
echo "</head>\n<body>\n";
require_once THEMES."templates/panels.php";
ob_start();
require_once THEMES."templates/footer.php";
?>
Даже вот так попробовал- все равно не появляются ключевики, взгляни сам код страницы http://bestvuz.ru...t_news.php
|
|
|
|
Vova |
Опубликовано 11.11.2012 20:41
|
Ветеран
Сообщений: 877
Зарегистрирован: 05.08.2011 11:53
|
back1919 написал:
Alex, Большое спасибо. Только вот ничего не изменилось(
Код <?php
require_once "maincore.php";
if (!defined("IN_FUSION")) { die("Access Denied"); }
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEME."theme.php";
require_once THEMES."templates/render_functions.php";
if ($settings['maintenance'] == "1" && ((iMEMBER && $settings['maintenance_level'] == "1"
&& $userdata['user_id'] != "1") || ($settings['maintenance_level'] > $userdata['user_level'])
)) {
redirect(BASEDIR."maintenance.php");
}
if (iMEMBER) {
$result = dbquery(
"UPDATE ".DB_USERS." SET user_lastvisit='".time()."', user_ip='".USER_IP."', user_ip_type='".USER_IP_TYPE."'
WHERE user_id='".$userdata['user_id']."'"
);
}
echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n";
echo "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='".$locale['xml_lang']."' lang='".$locale['xml_lang']."'>\n";
echo "<head>\n<title>Все университеты и институты Москвы. Студенческие новости.</title>
\n";
add_to_meta("description", "описание");
set_meta("keywords", "Ключевые слова");
?>
<?
echo "<meta http-equiv='Content-Type' content='text/html; charset=".$locale['charset']."' />\n";
echo "<link rel='stylesheet' href='".THEME."styles.css' type='text/css' media='screen' />\n";
if (file_exists(IMAGES."favicon.ico")) { echo "<link rel='shortcut icon' href='".IMAGES."favicon.ico' type='image/x-icon' />\n"; }
if (function_exists("get_head_tags")) { echo get_head_tags(); }
echo "<script type='text/javascript' src='".INCLUDES."jquery/jquery.js'></script>\n";
echo "<script type='text/javascript' src='".INCLUDES."jscript.js'></script>\n";
echo "</head>\n<body>\n";
require_once THEMES."templates/panels.php";
ob_start();
require_once THEMES."templates/footer.php";
?>
Даже вот так попробовал- все равно не появляются ключевики, взгляни сам код страницы http://bestvuz.ru...t_news.php
в твоем раскладе оно и не будет работать. тебе нужно переписать правило для замены мета тегов.
|
|
|
|
back1919 |
Опубликовано 11.11.2012 21:14
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
Vova, где и как это сделать?
|
|
|
|
Vova |
Опубликовано 12.11.2012 06:25
|
Ветеран
Сообщений: 877
Зарегистрирован: 05.08.2011 11:53
|
Код add_to_meta("description", "описание");
set_meta("keywords", "Ключевые слова");
это замени на это
Код GeSHi: PHP echo "<meta name='description' content='".$settings['description']."' \>\n"; echo "<meta name='keywords' content='".$settings['keywords']."' \>\n";
Добавлено за 0.023 секунд, используя GeSHi 1.0.8.10
Код add_to_meta("description", "описание");
set_meta("keywords", "Ключевые слова");
это не так использутеться. а на странице.
там всё так работает. Записиваеться в буфер. Далее ищеться по правилам и заменяеться.
этот в конце обезательно.
Код $output = ob_get_contents();
if (ob_get_length() !== FALSE){
ob_end_clean();
}
echo handle_output($output);
if (ob_get_length() !== FALSE){
ob_end_flush();
}
а это в начале
Код ob_start();
|
|
|
|
back1919 |
Опубликовано 12.11.2012 11:13
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
Vova, извини пожалуйста, еще раз:
Вот этот код:
Код echo "<meta name='description' content='".$settings['description']."' \>\n";
echo "<meta name='keywords' content='".$settings['keywords']."' \>\n";
я вставляю вместо того, что есть сейчас:
Код add_to_meta("description", "описание");
set_meta("keywords", "Ключевые слова");
А вот куда именно вставлять остальное я не понял. Куда мне прописывать сами мета-теги- описание, ключевики?
|
|
|
|
mishqa35 |
Опубликовано 12.11.2012 12:19
|
Опытный пользователь
Сообщений: 307
Зарегистрирован: 04.01.2011 18:50
|
back1919, зачем все усложнять?
Вот допустим твоя новая страница
GeSHi: PHP <?php require_once "maincore.php"; require_once THEMES."templates/header.php"; // Для того чтобы поменять мета теги достаточно прописать их заного set_meta("description", $content="Новый description"); set_meta("keywords", $content="Новый keywords"); // Тут твой код require_once THEMES."templates/footer.php"; ?>
Добавлено за 0.022 секунд, используя GeSHi 1.0.8.10
Или я что то не правильно понял из первого поста
|
|
x2
|
|
|
|
back1919 |
Опубликовано 12.11.2012 17:31
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
mishqa35? большое спасибо за совет. Только получаются какие то чудеса. Вот на странице http://bestvuz.ru/moscow_student_news.php код вот такой:
Код <?php
require_once "maincore.php";
if (!defined("IN_FUSION")) { die("Access Denied"); }
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEME."theme.php";
require_once THEMES."templates/render_functions.php";
if ($settings['maintenance'] == "1" && ((iMEMBER && $settings['maintenance_level'] == "1"
&& $userdata['user_id'] != "1") || ($settings['maintenance_level'] > $userdata['user_level'])
)) {
redirect(BASEDIR."maintenance.php");
}
if (iMEMBER) {
$result = dbquery(
"UPDATE ".DB_USERS." SET user_lastvisit='".time()."', user_ip='".USER_IP."', user_ip_type='".USER_IP_TYPE."'
WHERE user_id='".$userdata['user_id']."'"
);
}
echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n";
echo "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='".$locale['xml_lang']."' lang='".$locale['xml_lang']."'>\n";
echo "<head>\n<title>Все университеты и институты Москвы. Студенческие новости.</title>
\n";
set_meta("description", $content="Новый description");
set_meta("keywords", $content="Новый keywords");
echo "<meta http-equiv='Content-Type' content='text/html; charset=".$locale['charset']."' />\n";
echo "<link rel='stylesheet' href='".THEME."styles.css' type='text/css' media='screen' />\n";
if (file_exists(IMAGES."favicon.ico")) { echo "<link rel='shortcut icon' href='".IMAGES."favicon.ico' type='image/x-icon' />\n"; }
if (function_exists("get_head_tags")) { echo get_head_tags(); }
echo "<script type='text/javascript' src='".INCLUDES."jquery/jquery.js'></script>\n";
echo "<script type='text/javascript' src='".INCLUDES."jscript.js'></script>\n";
echo "</head>\n<body>\n";
require_once THEMES."templates/panels.php";
ob_start();
require_once THEMES."templates/footer.php";
?>
ну а когда жму crt+u, то в коде НЕ отображаются ключевики и описание. Что за чертовщина...
|
|
|
|
mishqa35 |
Опубликовано 12.11.2012 18:02
|
Опытный пользователь
Сообщений: 307
Зарегистрирован: 04.01.2011 18:50
|
Еще бы ты их там увидел, ты же их не прописал туда:D
Если хорошо взглянешь на файл themes\templates\header.php в нем хорошо видно что они прописаны и ждут текста
После
Код echo "<head>\n<title>Все университеты и институты Москвы. Студенческие новости.</title>
Добавь
Код <meta name='description' content='".$settings['description']."' />\n
<meta name='keywords' content='".$settings['keywords']."' />\n
И уже после этого ты их изменишь функциями
Код set_meta("description", $content="Новый description");
set_meta("keywords", $content="Новый keywords");
|
|
x1
|
|
|
|
back1919 |
Опубликовано 12.11.2012 21:33
|
Опытный пользователь
Сообщений: 270
Зарегистрирован: 08.03.2011 08:49
|
mishqa35, Низкий тебе поклон!
|
|
|