元标记取决于所选语言和标题

Posted

技术标签:

【中文标题】元标记取决于所选语言和标题【英文标题】:Meta tag depending of selected language and title 【发布时间】:2011-02-09 09:23:38 【问题描述】:

我知道 Google 在大多数情况下会忽略元标记并使用内容。 (这里不是重点)

我正在开发一个不是我创建的现有网站。 我需要一个快速的解决方案,我猜是变量。

网站建设:(未知模板系统)

index.html 是带有语言选择的演示页面

index.php 嵌入菜单、内容、页脚 index.php 嵌入的几个内容页面

我只需要为那两个页面welcome_en.html 和welcome_fr.html 做些什么 (这些页面是嵌入的,所以这些页面上没有标题) 拥有不同的页面标题(浏览器标题)和不同的 META 标签。

额外信息

index.php 上的语言检测:

<?php
$lang = $_GET['lang'];
$page = $_GET['page'];
if ($_GET['page'] == "" || !$_GET['page']) 
$page = "welcome";

if ($_GET['lang'] == "" || !$_GET['lang']) 
$lang = "_fr";

?>

对于嵌入式菜单,像这样的页脚等

<?php include "menu.php";
  ?>

对于嵌入的内容

 <?php
        //echo "$page$lang.html";
        $lang = preg_replace('/[^a-z0-9_ ]/i', '', $_GET['lang']);
        $page = preg_replace('/[^a-z0-9_ ]/i', '', $_GET['page']);
        include $page . $lang . ".html";
  ?>

所有页面的标题信息元标记和标题都在 index.php 中,没有变量。

【问题讨论】:

您如何识别语言(cookie、会话、获取、发布)?你在使用一些模板系统吗?您如何存储布局(标题)文件?你如何渲染这些文件? 您好,我在帖子中添加了额外信息。谢谢 我仍然需要帮助,欢迎提出任何建议,谢谢 【参考方案1】:

我找到了一个可行的解决方案

<?php 
if($page == "welcome" && ( $lang == "_en" || $lang == "") )

  echo '<title>English Title</title>';
  echo '<meta name="Keywords" content="English Keywords" />';
  echo '<meta name="Description" content="English Description" />';  

elseif($page == "welcome" && $lang == "_fr")

  echo '<title>French Title</title>';
  echo '<meta name="Keywords" content="French Keywords" />';
  echo '<meta name="Description" content="French Description" />';  

?>

【讨论】:

以上是关于元标记取决于所选语言和标题的主要内容,如果未能解决你的问题,请参考以下文章

如何在 python 编程中查看和编辑元标记

XML和JSON的比较

XML和JSON的比较

Qt 信号和插槽发送结构数组

第100天:XML和JSON的比较

Obj-C - Google Maps SDK 获取所选标记的数据?