簡體   English   中英

單擊標題相同的新聞文章時,文章有誤

[英]Wrong article when clicking on news article with same title

編輯器創建了多個標題相同的tt_news文章。 如果您導航到新聞,則可以看到正確的摘錄,但是單擊詳細視圖時,您會看到摘錄中未看到的文章。 這是一篇較舊的文章,標題相同。 網址看起來像這樣

http://yourdomain.com/news/news-detail/duplicate-article-name.html

當前使用以下版本:

  • CoolURI 1.0.29
  • tt_news 3.0.1
  • TYPO3 4.5.10

CoolUriConf.xml_default具有以下內容

<uriparts>
    <part>
      <parameter>tx_ttnews[tt_news]</parameter>
      <lookindb>
        <to>SELECT title FROM tt_news WHERE uid=$1</to>
        <t3conv>1</t3conv>
      </lookindb>
    </part>

現在我根據手冊將其更改為

  <uriparts>
    <part>
      <parameter>tx_ttnews[tt_news]</parameter>
      <lookindb>
        <to>SELECT CONCAT(tt1.title,IF(tt2.number>1,CONCAT('-',tt2.number),'')) FROM tt_news as tt1, (SELECT COUNT(*) AS number FROM tt_news WHERE title=(SELECT title FROM tt_news WHERE uid=$1)) AS tt2 WHERE tt1.uid=$1</to>
        <t3conv>1</t3conv>
      </lookindb>
    </part>

我清除了所有緩存(包括CoolURI緩存),但是如果單擊URL,現在可以找到最新的文章。 網址未更改。

我做錯了什么? 我什至嘗試使用其他瀏覽器。

嘗試使用RealUrl進行配置比CoolURI容易得多。

好的,我正在考慮這個問題,嘗試將查詢更改為:

SELECT CONCAT(tt1.title,IF(tt2.number> 1,CONCAT('-',tt2.number),''))從tt_news作為tt1,(SELECT ROW_NUMBER()OVER(ORDER BY uid)AS number from tt_news WHERE title =(從tt_news WHERE uid = $ 1選擇標題)AS tt2 WHERE tt1.uid = $ 1

之后,您應該具有以下鏈接:

http://yourdomain.com/news/news-detail/duplicate-article-name-1.html
http://yourdomain.com/news/news-detail/duplicate-article-name-2.html
http://yourdomain.com/news/news-detail/duplicate-article-name-3.html

我終於找到了錯誤。 我編輯的文件錯誤。 我編輯了typo3conf/ext/cooluri/cooluri/CoolUriConf.xml_default

如果進入Extension Manager並單擊CoolURI找到正確的路徑。 真正的CoolUriConf.xml的路徑位於XML path變量中。 就我而言,它是fileadmin 現在,最新文章的名稱如下:

http://yourdomain.com/news/news-detail/duplicate-article-name.html

年長的人有這個名字

http://yourdomain.com/news/news-detail/duplicate-article-name-2.html

等等。 有更好的解決方案,但是CoolURI可以做的所有事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM