Как создать динамический заголовок страницы с помощью PHP - PullRequest
4 голосов
/ 27 июля 2010

Привет, мне было интересно, может кто-нибудь помочь с этой проблемой PHP.

Можно ли использовать текст в теге H2 и использовать его для динамического заполнения заголовка страницы.

Я также хотел бы использовать эту же технику для добавления текста H2 в мета-описание - Кто-нибудь может помочь?

Ответы [ 3 ]

5 голосов
/ 27 июля 2010

Если ваш текст h2 создается динамически, то другие части вашей веб-страницы также могут создаваться динамически.Например, если у вас есть переменная $ a = "My Text"

<?php
$a = "My Text"
?>
<html>
<head>
<title><?php echo $a;?></title>
</head>
<body>
<h2><?php echo $a;?></h2>
</body>
</html>

С помощью этого метода вы можете определить текст других частей веб-страницы.

3 голосов
/ 27 июля 2010

Это звучит как то, в чем jQuery превзошел бы:

<script type='text/javascript' src='jquery-1.4-min.js'></script>
<script type="text/javascript">
    $(document).ready(function() {
        document.title = $('h2:first').text();
    });
</script>

Чтобы изменить метаданные, вы бы сделали больше того же.Я настоятельно рекомендую jQuery - от новичка до ниндзя как удивительный способ углубиться в глубину с помощью jQuery.

<html>
<head>
<meta description="" />
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $('meta:first').attr('description', $('h2:first').text());
        alert($('meta:first').attr('description'));
    });
</script>
</head>
<body>
<h2>Testing 123</h2>
</body>
</html>
1 голос
/ 07 декабря 2013

Для тех, кто ищет немного более динамичный метод, который выполняет мета и заголовок одновременно и использует некоторые запасные варианты:

<script type="text/javascript">
$(document).ready(function() {
    $title = '';
    if($('h1:first').text() != '')
    {
        $title = $('h1:first').text();
        document.title = document.title + " | " + $title;
        $('meta:first').attr('content', $title);
    } else if($('h2:first').text() != ''){
        $title = $('h2:first').text();
        document.title = document.title + " | " + $title;
        $('meta:first').attr('content', $title);
    } else if($('h3:first').text() != ''){
        $title = $('h3:first').text();
        document.title = document.title + " | " + $title;
        $('meta:first').attr('content', $title);
    } else if($('.panel-heading:first').text() != ''){
        $title = $('.panel-heading:first').text();
        document.title = document.title + " | " + $title;
        $('meta:first').attr('content', $title);
    }
});
</script>

Это объединит сгенерированный заголовок в конец текущегозаглавие.Он также устанавливает описание в то же значение.

Вы должны иметь метатег описания в качестве первого метатега в заголовке, чтобы это работало для установки мета описания.Если это не так, вы можете изменить селектор $('meta:first'), чтобы выбрать метатег описания.

Я использую начальную загрузку, поэтому первым заголовком панели является мой резервный вариант: $('.panel-heading:first'), измените его так, чтобы он соответствовал желаемому отступлению, если на текущей странице нет тегов заголовка.

Когда все остальное терпит неудачу, этот скрипт оставит значение вашего заголовка в его текущем значении.

...