0

我使用wordpress,我有以下问题,

我使用 URL: - www.mysite.com/page - www.mysite.com/cat/page - www.mysite.com/custompostype/post

permalinks 的值是%category%/%postname%,一切正常,除了现在我必须使用两种语言并且我想配置如下:

  • www.mysite.com/EN/page
  • www.mysite.com/ES/cat/page
  • www.mysite.com/BR/custompostype/post

我想更改第一条规则是语言的 wordpress url 的结构,并将其作为变量值。如同/%lang%/%category%/%postname%/

我使用了 wp_rewrite 并没有成功,知道吗?

4

1 回答 1

0

现在我刚刚找到了我的问题的解决方案,我处理了会话

  <?php function init_sessions() {
     if (!session_id()) {
         session_start();
     } } add_action('init', 'init_sessions'); ?> <?php function detecta_idioma() {  if($_SESSION["IDIOMA"]["actual"]=="")   {
        $_SESSION["IDIOMA"]["actual"]="ES";
        $_SESSION["IDIOMA"]["abreviatura"]="";
        $_SESSION["IDIOMA"]["nombre"]="Español";
        $_SESSION["IDIOMA"]["tag"]="ES";    }   if($_GET["action"]=="idioma" &&
 $_GET["lang"])     {       unset($_SESSION["IDIOMA"]);
        switch($_GET["lang"])       {           case "EN":
                $_SESSION["IDIOMA"]["actual"]="EN";
                $_SESSION["IDIOMA"]["abreviatura"]="_en";
                $_SESSION["IDIOMA"]["nombre"]="Ingles";
                $_SESSION["IDIOMA"]["tag"]="EN";            break;          case "ES":          default:
                $_SESSION["IDIOMA"]["actual"]="ES";
                $_SESSION["IDIOMA"]["abreviatura"]="";
                $_SESSION["IDIOMA"]["nombre"]="Español";
                $_SESSION["IDIOMA"]["tag"]="ES";            break;
                    }   }   $IDIOMA=array("actual"=>$_SESSION["IDIOMA"]["actual"],"ab"=>$_SESSION["IDIOMA"]["abreviatura"],"nombre"=>$_SESSION["IDIOMA"]["nombre"],"tag"=>$_SESSION["IDIOMA"]["tag"]);
    global $wp_rewrite;
     $wp_rewrite->set_permalink_structure($_SESSION["IDIOMA"]["tag"].'/%category%/%postname%');
    return $IDIOMA; }  add_action('init', 'detecta_idioma'); ?>

适用于路线条目,例如 www.misitio.com/en/post-demo,不适用于页面或类别或分类法,例如:www.misite.com/es/category/, www.site.com/es /page/subpage 或 www.site.com/br/taxonomy <----- 不工作,显示错误 404 页面

我不能使用插件 qTranslate 和 CMS 插件多语言或者它们不能很好地使用插件高级自定义字段和自定义帖子类型 UI。

谢谢

于 2012-09-14T16:58:00.037 回答