Feedのパーマリンクには必ず言語コードを付加させる

Gengoのパーマリンク設定に関係なく、フィード(RSS)リンクには言語コードを必ず含ませたいと思い、パッチ作成。

[前]
http://wp.reedom.com/feed
[後]
http://wp.reedom.com/feed/ja/
Index: gengo.php
===================================================================
--- gengo.php   (revision 106)
+++ gengo.php   (working copy)
@@ -175,7 +175,7 @@
                                add_filter('year_link', array(& $this,'append_links'));
                                add_filter('month_link', array(& $this,'append_links'));
                                add_filter('day_link', array(& $this,'append_links'));
-                               add_filter('feed_link', array(& $this,'append_links'));
+                               add_filter('feed_link', array(& $this,'append_feed_links'));
                                add_filter('post_comments_feed_link', array(& $this,'post_comments_feed_link'));

                                // SQL control.
@@ -654,6 +654,12 @@
                return $this->append_link_language($link, $this->viewable_code_string);
        }

+       // Append language codes to other links.
+       function append_feed_links($link) {
+        $this->forced_append = true;
+               return $this->append_link_language($link, $this->viewable_code_string);
+       }
+
        // Called from wp_list_pages.
        function get_pages($pages, $arguments) {
          global $wpdb;
@@ -730,7 +736,8 @@
        function post_comments_feed_link($url) {
          global $post;
          if (get_option('permalink_structure')) $url = preg_replace("|/$post->code/$|", '/', $url);
-               return $this->append_link_language($url, $post->code);
+      $this->forced_append = true;
+      return $this->append_link_language($url, $post->code, false);
        }

        // Define the language query variable.

 

2件のコメント

  • At 2007.09.19 20:26, Ian Lewis said:

    私も言語毎にユニークなリンクがあるべきだと思います。私も自分のサイトで、b2evolutionをハックして、言語につき、RSSフィードを作成しました。でも、多言語の機能がほしい私はb2evolutionをいっぱいハックしたりして、面倒くさくなってるから、最近、WordpressとGengoに移行すればいいかなと思っています。 とにかく、もし、Wordpressに移行したら、あなたのパッチを必ず使います。

    • At 2007.09.19 22:59, reedom said:

      確かにハックは面倒なものですよね。
      私もWordPressを導入してみて欲しい機能が無いために、またGengoのクセがえらく強くてしかもバグがいくつもあったために、いくつものハックをせざるを得なくなり、たくさんの時間を費やすことに。望んでもいなかったのにWordPressとGengoのソースコードに詳しくなってしまいました。
      あ、Gengoにはまだバグが少なからず残ってるはずですし、クセも強いことから、私のパッチを当てたあとでも、まだハックが必要になるかも。
      でもIanさんの運が相当強ければやり過ごせるかも?
      ご幸運を。

      (Required)
      (Required, will not be published)