メインコンテンツに移動
ホーム

古松

メインナビゲーション

  • ホーム
  • ビデオ
  • ご連絡

パンくず

  • ホーム
  • Drupal8 : モジュール(pathauto)の設定にエイリアスを翻訳しないように設定の注意

Drupal8 : モジュール(pathauto)の設定にエイリアスを翻訳しないように設定の注意

モジュール(pathauto)より記事のタイトルをURLに設定

  • モジュール(pathauto)より、記事にタイトル、サマリなどをURLにするエイリアスの作成ができる
    pathautoより記事のタイトルをURLに変換
  • 但し、このモジュールの設定にある「URL エイリアスを生成する前に翻訳を行う」をチェックすると、日本語の漢字がアルファベットに変換してしまうことになります
    エイリアスの翻訳結果

モジュール(pathauto)の各設定項目を注意

  • URLエイリアス作成関連の設定:ホーム » 管理 » 環境設定 » 検索とメタデータ » URL エイリアス » 設定
  • 設定項目に「URL エイリアスを生成する前に翻訳を行う」がありますが、これをチェックしないようしてください
    エイリアス作成前に翻訳する設定
     

Drupalのモジュール(Pathauto)でコンテンツタイプ別のURLパターン作成

記事のタイトルをURLに追加するのは有効なSEO対策の一つはとなります

  • 環境:Drupal7.54、Pathauto:7.x-1.3
  • モジュール(path:コアーに含まれている)一つ一つで記事のタイトルをURLに書き換えるのはできます
    • URLエイリアス管理画面(ホーム » 管理 » 環境設定 » 検索とメタデータ)で「エイリアス追加」リンクをクリックして、エイリアスURLの作成ができます
  • 記事などが作成する際に、自動的にURLエイリアス作成はPasthautoで行います
    • URLエイリアス管理画面(ホーム » 管理 » 環境設定 » 検索とメタデータ)の「パターン」タブで各種コンテンツのURLのエイリアス生成パターンを設定します(Tokenの利用が可能)
  • Pathautoのインストール、有効化、使用方法はビデオを参考してください

既存の記事のURLエイリアスをバッチで作成する必要があります

  • Pathautoインストール、有効化では、既存の記事のURLのエイリアスを作成するこはありません
  • URLエイリアス管理画面(ホーム » 管理 » 環境設定 » 検索とメタデータ)の「一括生成」タブで変換する必要なコンテンツタイプを選んでURLエイリアス作成バッチを起動します

Drupalのhook_menuでのURL設定にワイドカードの利用

hook_menuで定義したアクセスURLに、ワイドカード’%’(任意の文字、数字)の使用ができます。例えば、あるページのURI: 「/user/123/fbconnect」、このページにuid=123のユーザーのfbconnectを表示するページとなります。ユーザーにより、uidは変わります。

実際にhook_menuでは、連想配列のキー: $items['user/%/fbconnect'] で表現します。ここで、ワードカード’%’が使用されています。

ワイドカードが二つのパタン

パタン1: ワイドカードのみの

  • このパタンは比較的に単純で、分かりやすいです
  • URLにあるワイドカードの部分を直接に「page callback」関数に定義された関数の引数として渡します。
    function [my-module-name]_menu() {
      $items['user/%/fboauth'] = array(            //ワイドカード'%'の使用
        'title' => t('Facebook settings'),
        'page callback' => 'fboauth_user_form',  //ページ定義関数の呼び出し
        'page arguments' => array(1),               //パスの1番目(0から)を引数に
        ・・・・,
      );
    
    function fboauth_user_form($uid){             //URIの1番目にあるワードカードを引数に
      $user = user_load($uid);
      ・・・
    }
  • URIに指定された('page arugments'=>array(1))部分(%:uid)をページ定義関数(fboauth_user_form($uid))の引数にします

パタン2: ワイドカード+ファンクション名

  • このパタンは「Auto-loader Whitcarts」と言います
  • 例: $items['user/%user/fboauth'] = array( ・・・・・ )ではワイドカード'%'とファンクションuserと一緒に定義されています。
  • パスにあるワイドカードの部分を呼びされたページ定義関数に直接に渡すのではないです
  • ワイドカードを引数として、定義されたファンクションよりUserオブジェクトをロードして、ページ定義関数に渡します
  • 上記の例では、Drupalの固有関数(user)を利用していたため、独自にそのローダー関数の定義は不要となります。
  • 以下の例では、独自のローダー(custom_obj_load())を定義しています
  • スペシャルオブジェクトローダーの関数名は: ワードカードの後ろに定義したオブジェクト名(ここは: custom_obj)+'_load' => custom_obj_load($obj_id)となります

検索フォーム

カテゴリ別

  • laravel
  • drupal
  • javascript
  • windows
  • html
  • mysql
  • php
  • apache
  • css
  • SEO
  • video
  • wordpress
  • linux
  • python
  • Electron
  • Visual Studio Code

google ads