マイクロ office ★excel2016 価格 http://www.msofisu.com

microsoft オフィス ★office365 価格 個人

EC-Cube 2.12.6で sitemap.phpでのuser_dataを消す方法について

EC-Cube 2.12.6で sitemap.phpでのuser_dataを消す方法について

EC-Cube 2.12.6で sitemap.phpでのuser_dataを消す方法について

(Eccube 2.12.3)sitemap.phpでのuser_dataを消す方法について

motorpと申します。

Eccube 2.12.3 で作業を行っているのですが

user_data のページ表示で URLに含まれる user_data を消すことと静的アドレスになるように、.htaccess 側で以下のようにしました。

http://xxx.com/user_data/test.php

http://xxx.com/test.html

.htaccess

RewriteEngine on

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*).html$ user_data/$1.php [L]

次にsitemap.phpで表示を治す作業(LC_Page_Sitemap.php)を行っているのですが

sitemap.phpで/user_data/の部分を無くす(?)記述がわからなく修正方法がわかる方がおられましたら、ご教授頂けたら助かります。


Re: (Eccube 2.12.3)sitemap.phpでのuser_dataを消す方法について こんにちわ。

LC_Page_Sitemap.php で、user_dataを含むURLを取得している箇所で、URLを出力する前に加工すればOKです。

process()の中の以下の部分を

// 編集可能ページを処理 $arrEditablePagesList = $this->getEditablePage($this->arrPageList); foreach ($arrEditablePagesList as $arrEditablePage) { $this->createSitemap($arrEditablePage[‘url’], $this->date2W3CDatetime($arrEditablePage[‘update_date’])); }

以下のように修正します。

// 編集可能ページを処理 $arrEditablePagesList = $this->getEditablePage($this->arrPageList); foreach ($arrEditablePagesList as $arrEditablePage) { $url = $arrEditablePage[‘url’]; // 追加 if (strpos($url, ‘user_data/’)) { // 追加 $url = str_replace(‘user_data/’, ‘’, $url); // 追加 $url = preg_replace(‘/.php$/’, ‘.html’, $url); // 追加 } // 追加 $this->createSitemap($url, // 変更 $this->date2W3CDatetime($arrEditablePage[‘update_date’])); }

 

Re: (Eccube 2.12.3)sitemap.phpでのuser_dataを消す方法について
こんにちわ。 LC_Page_Sitemap.php で、user_dataを含むURLを取得している箇所で、URLを出力する前に加工すればOKです。 process()の中の以下の部分を
// 編集可能ページを処理  $arrEditablePagesList = $this->getEditablePage($this->arrPageList);  foreach ($arrEditablePagesList as $arrEditablePage) {      $this->createSitemap($arrEditablePage['url'],                           $this->date2W3CDatetime($arrEditablePage['update_date']));  }
以下のように修正します。
// 編集可能ページを処理  $arrEditablePagesList = $this->getEditablePage($this->arrPageList);  foreach ($arrEditablePagesList as $arrEditablePage) {      $url = $arrEditablePage['url'];                     // 追加      if (strpos($url, 'user_data/')) {                   // 追加          $url = str_replace('user_data/', '', $url);     // 追加          $url = preg_replace('/\.php$/', '.html', $url); // 追加      }                                                   // 追加      $this->createSitemap($url,                          // 変更                           $this->date2W3CDatetime($arrEditablePage['update_date']));  }