web-dev-qa-db-ja.com

有機グループ、グループコンテンツタイプ、pathauto

私が持っているpathautoモジュール設定で

localhost/[node:group_group]

すべてのグループタイプ。私にはいくつかのグループタイプがあります。ExTechnology、Arts、Designなどで、各グループタイプ内で必要な数のグループを作成できます。

したがって、googleという名前のグループを作成すると、パスは次のようになります。

localhost/technologies/google

そのグループ内で記事を作成し、このようなパスを作成したい

localhost/[node:group_group]/[node:title]/[content-type]/[title]

例:

localhost/technologies/google/article/some-article

このようなことを達成するにはどうすればよいですか? pathautoモジュールで使用例のトークン置換パターンを見つけることができませんでした。ここにトリックがありますか?

ありがとう

2
Minty

私は試した:

[node:og-group-ref:url:relative]/[node:menu-link:parent]/[node:title]

魅力のように働いた。

だから、私はあなたが一緒に行くべきだと思います:

[node:og-group-ref:url:relative]/[node:content-type]/[node:title]

注:これはGoogleでの最初の結果(私にとって)でしたので回答を投稿しましたが、回答はありませんでした...おそらく、他の人をより正しい方向に向けることができます。

2

[node:og-group-ref]/[node:title]は私にとってうまくいきました。

2
user12342

私にとって、これはうまくいきました:

  1. サンドボックスモジュールをインストール _og_token_

  2. Drupal問題 #1930132コメント1 のように、パッチ_og_token-og_7.2-1930132-1.patch_を_og_token_に適用します。

  3. オプションで、トークンでグループタイトルではなくグループのURLエイリアスを使用する場合:ファイル_og_token.module_で、関数og_token_get_group_labels()を次のように交換します。

    _function og_token_get_group_labels($nodes, $options) {
      $labels = array();
      $sanitize = !empty($options['sanitize']);
    
      foreach ($nodes as $group) {
        $label = drupal_get_path_alias('node/' . $group->nid);
        $labels[] = $sanitize ? check_plain($label) : $label;
      }
      return $labels;
    }
    _
  4. Pathautoパターンを次のように設定します。

    _[node:og-group-audience:first]/[node:content-type]/[node:title]
    _

このソリューションは lahodeの作業 に基づいています。これは、この質問に対する answer by @Marcus Farrington と同じ効果を発揮します。私にとっては、モジュールの最新バージョンogtokenなどでは機能しません..

OGトークンに関するこれらすべての問題は、 Drupalの問題#1088538 で詳しく説明されています。

0
tanius

私は1つのグループタイプ(「プロジェクト」)しか持っていないので、これは完全な答えではありませんが、admin/config/search/path/patterns内で使用します

projects/[node:group_audience]/[node:content-type]/[node:title]

uRLにコンテンツタイプの用語とは異なる用語を表示させない限り、異なるコンテンツタイプのそれぞれについて。これは

google/article/some-article

文字列の一部。たぶんあなたはあなたを置くでしょう

[node:group_group]

[node:group_group]が「technology/google」を生成しない限り、私の「プロジェクト」の代わりに、

[node:group_group]/[node:content-type]/[node:title]

0
mbrakken