問題タブ [drupal-path-aliases]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1212 参照

redirect - DrupalはリダイレクトURLからパスを取得します

Drupal に、別の URL のリダイレクトである URL を指定して、元の URL を取得する方法があるかどうかを知りたいです。

つまり、次のような URL とエイリアスがあります: /prices/old-vehicles -> node/112

そして、私はURLリダイレクトを->として持っています

/old-vehicles-pricing -> /prices/old-vehicles

「/old-vehicles-pricing」から「/prices/old-vehicles」を取得する関数を書きたいと思います。

ありがとう。

アップデート

シナリオについて少し詳しく書いてみます。ユーザーが old-vehicles-pricing にアクセスすると、node/112 のエイリアスである /prices/old-vehicle にリダイレクトされるとします。すべて正しい。

ここで、ユーザーが /de/old-vehicles-pricing (ドイツ語版) にアクセスしたとします。その URL リダイレクトは存在しません。その特定のページのリダイレクトを作成することはできますが、一般的な解決策を見つけようとしています。だから私がしようとしているのは、無効な URL をインターセプトし、言語プレフィックスを取り除き、その URL の元の URL を取得することです。つまり、ステップ 1. /de/old-vehicles-pricing へのリクエストをインターセプトします ステップ 2. 「old-vehicles-pricing」を実行します ステップ 3. 元のエイリアスまたは正規 URL を取得します ( /prices/old-vehicles または node/ 112) ステップ 4. 正規 URL の翻訳バージョンを取得します ステップ 5. ユーザーを新しい翻訳済み URL にリダイレクトします

ステップ 3 のみを解決する必要があります。他のすべてのステップを実装しました。

また、ユーザーが開始時に「/de/old-vehicles-pricing」にアクセスしてはならないこともわかっています。しかし、それは私の手に負えないことであり、それが私がこのソリューションを実装しようとしている理由です.

ありがとう

0 投票する
1 に答える
1018 参照

drupal - Drupal pathauto トークン [term:parents:join-path] が正しく動作しない

親用語の URL が自動生成されなかった場合。また、トークン [term:parents:join-path] を使用して子用語の URL が生成されました。間違った親カテゴリの URL が使用されています (自動生成されますが、実際のものではありません)。

ブログ分類用語の URL エイリアス生成ルールを [term:parents:join-path]/[term:name] に設定したとします。

また、カテゴリ構造があります。「親カテゴリ」に「my-parent-category」という URL が手で埋められています。

「サブカテゴリ」は、「親カテゴリ/サブカテゴリ」という URL を取得しますが、「私の親カテゴリ/サブカテゴリ」は取得しません。

そのため、親カテゴリの URL を手動で入力した場合、各サブカテゴリの URL とノードの URL も更新する必要があります (ノードの URL 構造が完全なパスを使用して用語をスローする場合)。

0 投票する
1 に答える
204 参照

drupal - パスエイリアスでプラス「+」記号を使用すると、ページが見つからないというエラーが発生する

URL エイリアスを として新しい単純なノードを作成しようとしていますtest+node。ノードを保存すると、ページにノードが表示されず、URLが次のように変更されます

http://server/packets/test%2Bnode

しかし、次のエラーのみが表示されます

Page not found The requested page "/packets/test%2Bnode" could not be found.

誰でもこの問題を解決するのを手伝ってもらえますか...

0 投票する
1 に答える
114 参照

drupal - Drupal 7 で何千もの URL リダイレクト: PathAuto/GlobalRedirect、apache .htaccess、または別のソリューション?

マッピングが必要な 30,000 もの異なる URL が存在する可能性がある場合に、http 要求をマッピングする「最良の」(最速で最も効率的な) 方法を探しています。

古い vBulletin システムの URL を新しい Drupal 7 システムの URL にポイントするマップを作成しました。

私の質問は、書き換えを行う方法です。サーバー管理者が許可していないため、Apache mod_rewrite と RewriteMap を使用できません。私はカスタム モジュールを作成したくありません。だから私は最高の (最もスケーラブルな) Drupal モジュールまたは別のソリューションを探しています。

PathAuto と Global Redirect が進むべき道だと思いますが、マップ内の非常に多くの URL にスケーラビリティの問題があるかどうかを知りたいです。

Apache mod_rewrite の RewriteMap はマップを読み取り、ファイルの mtime が変更されるまでメモリに保存します。グローバル リダイレクトはそれを行いますか?

編集: Apache の RewriteMap ディレクティブを使用するためのアクセス権がありませんが、リダイレクトを .htaccess ファイルに配置できます。これはメモリにキャッシュされるか、リクエストごとに検索されますか?

ありがとう!

0 投票する
0 に答える
1225 参照

drupal - ホームページへの Drupal パス エイリアス ルーティング (ページ)メインメニューでリンクがクリックされたとき

私はこの問題に 6 時間取り組んできましたが、とても単純に思えますが、理解できないようです。クライアント用の Drupal サイトを作成していますが、これまで Drupal を使用したことがありませんでした。基本的なカスタム テーマを取り上げ、パス エイリアスのエラーに遭遇するまで、すべてがうまくいっていました。

この問題を最も基本的な形で再現するために、新しい Drupal プロジェクトを立ち上げました。私たちについてのページを bartik テーマで実行していますが、すべてのコンテンツを削除しました。私が持っているのは、node/1 である About という基本的なページだけです。メイン メニューには、node/1 にリンクするリンクが 1 つあります。「about」というページのエイリアスがあります。

問題:

メニューの about リンクをクリックすると、URL に localhost:8888/about が表示されます。まさに私が言いたいことですが、削除した最初のホームページのコンテンツをリロードするだけです。ただし、node/1 を URL バーに入力するか、"about" エイリアスを削除すると、ページが正常に読み込まれ、about コンテンツが表示されます。ページキャッシュをフラッシュしようとしましたが、何もしません。ページエイリアスの作成方法に関するチュートリアルをたくさん見てきましたが、それらはすべて非常に単純に見えますが、これを理解できないようです。どんな助けでも大歓迎です。

更新: pathauto モジュールをインストールし、すべてのコンテンツ エイリアスの既定のパターンを content/[node:title] にしました。content/about のような新しいエイリアスを追加すると、正常に動作しますが、[node:title] だけのパターンで作業することはまだできません。

ありがとう、

タイラー

0 投票する
1 に答える
72 参照

drupal - Drupal の記事で Pathauto を使用する

Drupal 7 では、何千もの記事を含むサイトがあります。分類法を使用して記事を並べ替え、コンテンツ フィルターを使用して特定のページに関連する用語を含む適切な記事を表示するビューを使用しています。標準機能。

パス (標準)、パスオート、およびトークンを追加したので、必要なものはすべて揃っていると思います。私の分類法では、次のように設定しました。

しかし、私の記事はすべて私の Web サイト (www.mysite.com/articlename) にあります。www.mysite.com/fruit/banana/pies のように表示したい。

どこにいても誰もが言うように、を使用して、パス構成ページの [記事] の下にパスを追加できます[term:parents:join-path]/[term:name]

ただし、エラーが発生しました:

私が得ることができる助けをいただければ幸いです!他のフォーラムで他の人がこれに苦労しているようですが、私と同じ問題はありません。

モジュールが足りないのでしょうか?これらのトークンは私のリストにありませんでした。

0 投票する
0 に答える
118 参照

drupal - Drupal 7 - 分類法に基づいて URL の場所に記事を追加するには?

分類法に基づいて URL の場所が自動的に生成される Drupal 7 Web サイトに記事を追加できるようにしたいと考えています。したがって、「ニュース > ローカル > タウン」という分類法を選択すると、www.site.com/news/local/town のサイトに配置されます。

ここまでで、分類語彙の階層が作成されました。Pathauto と Entity Reference をインストールしました。ここからどうすればいいのかわからない。

モジュールの Pathauto の [構成] パネルに移動すると、コンテンツ パス、タクソノミー ターム パス、ユーザー パスの 3 つのパス セットが表示されます。

Content Paths の下で、Pattern for All Article Paths の下に何かを追加することになっていると思います。ここに追加する必要があるのは、分類法から URL を作成するための変数だと思います。

それで調べました。徹底的に。先週あたりを探しました。次の行を使用することになっていることは、一般的なコンセンサスのようです。

これは問題です。エラーが発生します:

すべてのアーティクル パスのパターンで、無効なトークン [term:parents:join-path]、[term:name] が使用されています。

わかりました、それは理にかなっています。コンテンツ パスの下のリストに「term」トークンが表示されません。Taxonomy Term Paths の下で行いますが、記事の URL を定義しようとしています。

人々は立ち往生しています。私もそうです。これはデフォルトの Drupal 機能です。なぜこれが難しいのかわかりません。私が使用した他のすべての CMS で標準になっていることを行うためにしなければならない作業の量に基づいて、このソフトウェアに対する私の好意的な意見を変更し始めています。

私は何か間違ったことをしていますか?他に必要な手順はありますか?

この問題の解決に役立つアドバイスがあれば、よろしくお願いします。