จะจัดการกับเนื้อหา / URL ซ้ำใน Joomla ได้อย่างไร?


11

ฉันเพิ่งพบปัญหา SEO ที่สำคัญและในขณะที่ฉันได้แก้ไขมันในขณะนี้; ฉันพยายามหาสาเหตุว่าทำไมมันอาจเกิดขึ้นตั้งแต่แรกและหากมีข้อผิดพลาดหรือเป็นสิ่งที่เกี่ยวข้องกับ Joomla เอง ก่อนอื่นปัญหา:

เมื่อฉันรวบรวมข้อมูลเว็บไซต์ด้วย Moz มันแสดงเนื้อหาที่ซ้ำกันสี่รายการสำหรับหน้าแรกซึ่งไม่คาดคิด ตัวอย่างเช่นสำหรับหน้าแรกhttp://www.foo.comมันแสดง URL เนื้อหาที่ซ้ำกันดังต่อไปนี้:

foo.com/2-uncategorised/1-offers (canonical = foo.com/2-uncategorised/1-offers)
foo.com/2-uncategorised/2-enquiry (canonical = foo.com/2-uncategorised/2-enquiry) 
foo.com/2-uncategorised/3-products (canonical = foo.com/2-uncategorised/3-products) 

และลิงค์เหล่านี้ทั้งหมดก็แค่โหลดเนื้อหาโฮมเพจ แต่รายละเอียดเมตานั้นมาจากบทความ สิ่งนี้แสดงให้เห็นอย่างชัดเจนว่า Joomla นั้นสร้างการเชื่อมโยงโดยอัตโนมัติและฉันพบว่าเหมือนกันสำหรับ 4 ลิงค์ ลิงก์ในบทความเป็นดังนี้:

index.php?option=com_content&view=article&id=1&catid=2&Itemid=1
index.php?option=com_content&view=article&id=2&catid=2&Itemid=1
index.php?option=com_content&view=article&id=3&catid=2&Itemid=1

Itemid = 1สอดคล้องกับรายการเมนูในหน้าแรกที่อธิบายว่าทำไมหน้าแรกเป็นโหลด ฉันพยายามสร้างปัญหาขึ้นใหม่ แต่ไม่สามารถทำได้ ตามคนที่เพิ่มเนื้อหานี่คือขั้นตอนที่พวกเขาทำเมื่อสร้างบทความและลิงก์ภายใน:

  1. สร้างบทความ
  2. เพิ่มลิงก์ไปยังบทความอื่นโดยใช้แท็บ 'บทความ' ในตัวแก้ไขเนื้อหา
  3. สร้างรายการเมนูไปยังบทความ

ดังนั้นฉันสงสัยว่ามีบางอย่างผิดปกติที่นี่ ฉันสับสนเพราะมีมากกว่า 100 บทความ แต่สิ่งนี้เกิดขึ้นเฉพาะใน 5 บทความเท่านั้น ขอบคุณ

คำตอบ:


15

TOC ของคำตอบนี้:

  1. เนื้อหาภายใต้รหัสรายการเดียวกัน
  2. วิธีสร้างเนื้อหาซ้ำ / หน้าแบบไดนามิก / URL
  3. มุมมอง SEO
  4. การจัดการกับเนื้อหาซ้ำใน Joomla
  5. การอ้างอิงและลิงค์

1. เหตุใดจึงแสดงบทความภายใต้หัวข้อเดียวกัน

ก่อนอื่นนี่ไม่ใช่ปัญหาว่าทำไมคุณถึงได้รับ URL ซ้ำ บทความใช้รหัสรายการของโฮมเพจเนื่องจากไม่มีการกำหนดรหัสรายการอื่นให้

อ่านเพิ่มเติมเกี่ยวกับเรื่องนี้:

และอันนี้ก็อาจลึกซึ้ง:



2. วิธีสร้าง "เนื้อหาที่ซ้ำกัน" / หน้า / URL แบบไดนามิก

นี่เป็นพฤติกรรมปกติของเว็บไซต์แบบไดนามิกที่สร้างหน้าเว็บของตนโดยใช้พารามิเตอร์ URLเพื่อสร้างสตริงการสืบค้นในรูปแบบของคู่เขตข้อมูล - ค่า เซิร์ฟเวอร์ / แอปพลิเคชันจะได้รับแบบสอบถามประมวลผลและส่งคืนเนื้อหาที่เชื่อมโยงไปยังเบราว์เซอร์

เพื่อความเข้าใจที่ดีขึ้นคุณอาจต้องปิดการใช้งาน SEF Urls ในเว็บไซต์ Joomla และศึกษา URL ที่ไม่ใช่ SEF ของหน้าเว็บ:

ตัวอย่าง:

index.php? option = com_content & มุมมอง = บทความ & id = 3 & CatID = 9 & Itemid = 101

การแยกข้อความค้นหาด้านบนออกเป็นคู่เขตข้อมูลค่าที่เราเห็น:

  • ตัวเลือก = com_content
  • ดู = บทความ
  • id = 3
  • catid = 9
  • Itemid = 101

นี่คือค่าฟิลด์ที่ Joomla เข้าใจและจะพยายามคืนเนื้อหาดังต่อไปนี้:

มันจะสืบค้นในองค์ประกอบ com_content และใช้มุมมองบทความเพื่อแสดงรายการเนื้อหา (บทความ) ที่มี id 3 ของหมวดหมู่ id 9 โดยใช้รายการเมนูที่มี id 101


URL หลากหลายรูปแบบสำหรับ 1 หน้า

อย่างไรก็ตามบทความเดียวกันสามารถแสดงผลด้วยการรวมกันของเขตข้อมูลและค่าเพิ่มเติม:

ชุดค่าผสมที่เป็นไปได้บางอย่างอาจเป็น:

  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & CatID = 9
  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & Itemid = 101
  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & Itemid = 102
  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & Itemid = 103
  • index.php? option = com_content & มุมมอง = บทความ & id = 3
  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & lang = th
  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & CatID = 9 & Itemid = 101 & lang = th

  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & CatID = 9 & Itemid = 101 & lang = th & พิมพ์ = 1

  • index.php? option = com_content & มุมมอง = บทความ & id = 3 & CatID = 9 & Itemid = 101 & lang ส่วนประกอบ = th & tmpl =

ดังที่คุณเห็นข้างต้นทั้งหมดกำลังขอข้อมูลเดียวกันจากระบบซึ่งเป็นบทความที่มี id = 3 สิ่งเหล่านี้นำไปสู่ความจริงที่ว่าเนื้อหา / หน้าเดียวกันสามารถเข้าถึงได้ผ่าน URL ที่แตกต่างกันและในบางกรณีสามารถ แสดงในรูปแบบที่แตกต่างกัน

* เมื่อเปิดใช้งานSEF URLใน Joomla, ข้างต้นอาจแปลเป็นมากกว่า 1 SEF URL สำหรับบทความ / เนื้อหาเดียวกัน



3. มุมมอง SEO

เครื่องมือค้นหาที่ทันสมัยและGoogleโดยเฉพาะตระหนักถึงพฤติกรรมนี้ โดยปกติแล้วพวกเขาจะพยายามอย่างดีที่สุดเพื่อจัดทำดัชนีและเก็บ URL ที่เหมาะสมที่สุดสำหรับหน้านั้นไว้ในผลการค้นหา นอกจากนี้ Google ได้เปิดเผยว่าไม่มี "การลงโทษ " สำหรับเนื้อหาที่ซ้ำซ้อนเนื่องจากสิ่งนี้

อย่างไรก็ตามปัญหาหลักในกรณีที่เนื้อหา / หน้าเดียวกันได้รับการจัดทำดัชนีมากกว่าหนึ่งครั้งคือคุณอาจสูญเสียอันดับของหน้าและประสิทธิภาพ SEO ที่ดีที่สุดเนื่องจากการจัดอันดับหน้าจะแบ่งออกเป็นมากกว่า 1 หน้าแทนที่จะเป็น 1 .

เมื่อคำนึงถึงเรื่องนี้คุณควรจัดการกับสิ่งนี้แทนที่จะปล่อยให้ดัชนีการจัดทำดัชนีเสิร์ชเอ็นจิ้นในขณะที่พยายามเดาว่า URL ที่ต่างกันแสดงเนื้อหาเดียวกันหรือต่างกัน
นอกจากนี้การควบคุม URL ของคุณและสิ่งที่ดัชนี SE ควรช่วยให้คุณสามารถสร้างประสบการณ์การใช้งานที่ดีขึ้นโดยรวมเนื่องจากผู้ใช้ไซต์จะพบหน้าเดียวกันภายใต้ 1 URL มาตรฐานเท่านั้นและสามารถสร้างโครงสร้างที่แข็งแกร่งมากขึ้นสำหรับเว็บไซต์และการจัดการ .



4. วิธีจัดการกับเนื้อหาที่ซ้ำกัน

  • ใช้ Canonical URL สำหรับหน้าของคุณ
    Canonical Urls จะแนะนำเครื่องมือค้นหาเกี่ยวกับสิ่งที่ควรจะเป็น URL ที่ถูกต้องของหน้าเว็บที่พวกเขาควรรวบรวมข้อมูลและเก็บไว้ในดัชนีของพวกเขา

  • การใช้เมตาดาต้า INDEX / NOINDEX, FOLLOW / NOFOLLOW การใช้ข้อมูลเมตาดังกล่าวในหน้าของคุณจะแนะนำให้เครื่องมือค้นหาหากคุณต้องการให้ดัชนีหรือไม่เนื้อหาของหน้าและติดตามหรือไม่พบลิงก์

  • ใช้ 301 redirects / htaccess
    คุณสามารถเปลี่ยนเส้นทาง URL อื่น ๆ ทั้งหมดไปยัง URL ที่คุณต้องการได้ที่หน้าหลัก นี้สามารถทำได้ด้วยSEF ส่วนขยายหรือhtaccess ทั้งคู่ให้พลังที่ยอดเยี่ยมอย่างไรก็ตาม htaccess มีความยืดหยุ่นอย่างมากเมื่อพิจารณาความสามารถในการใช้นิพจน์ทั่วไปสำหรับการเปลี่ยนเส้นทาง / หรือเขียนใหม่ทุกชนิดโดยใช้ mod_rewrite เกี่ยวกับ J ส่วนขยายเมื่อจำเป็นต้องเกิดขึ้นผมมักจะใช้sh404SEF

    อัปเดต:ตามที่ @ Neil Robertson ระบุไว้ในความคิดเห็น: การเปลี่ยนเส้นทางที่สำคัญอย่างหนึ่งคือจากเวอร์ชันที่ไม่ใช่ www ของเว็บไซต์ไปยังเวอร์ชัน www ของเว็บไซต์หรือในทางกลับกัน เพิ่มสิ่งนี้ลงในไฟล์. htaccess สำหรับการเปลี่ยนเส้นทางที่ไม่ใช่ www ไปยัง www

        ### Redirect non-www to www
        RewriteCond %{HTTP_HOST} !^www\. [NC]
        RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
        ### Redirect non-www to www - END 
    
  • การใช้เครื่องมือ Google เว็บมาสเตอร์
    Google เครื่องมือเว็บมาสเตอร์มีตัวเลือกในการปรับวิธีการรวบรวมข้อมูลควรประพฤติกับพารามิเตอร์ URL

  • การใช้ Sitemap
    ส่งไปที่เครื่องมือค้นหาโครงสร้าง URL ของเว็บไซต์ของคุณ

  • การใช้ไฟล์ Robots.txt
    ของ Google และ SE อื่น ๆ ที่สำคัญนั้นเคารพ Robots.txt ของคุณ คุณสามารถสั่งให้พวกเขาไม่รวบรวมข้อมูลไดเรกทอรี / เส้นทางที่เฉพาะเจาะจง

ตัวเลือกทั้งหมดข้างต้นสามารถรวมกันเพื่อสร้างผลลัพธ์ที่ต้องการ

* เหมือนทุกที่ดังนั้นใน Joomla การวางแผนและการจัดระเบียบเนื้อหาที่ดีจะช่วยให้ได้ผลลัพธ์ที่ดีกว่าเสมอ โดยเฉพาะอย่างยิ่งกับ Joomla สิ่งนี้เกี่ยวข้องกับการจัดหมวดหมู่เนื้อหาที่สะอาดและโครงสร้างรายการเมนู



5. การอ้างอิงและลิงก์

ส่วนเสริม Joomla SEO

โดยปกติแล้วใน Joomla หากคุณต้องการจัดการกับสิ่งนี้อย่างมีประสิทธิภาพคุณจะต้องติดตั้งส่วนขยาย SEO-SEF ของบุคคลที่สาม



อ่านเพิ่มเติม:


1
หนึ่งในคำตอบที่ดีที่สุดในฟอรั่มนี้ :) มีประโยชน์มาก ขอบคุณ @FFrewin
Joomler

1
นี่คือคำตอบที่ยอดเยี่ยม :) เพื่อความสมบูรณ์อาจเป็นการดีที่จะเพิ่มข้อมูลเกี่ยวกับการเปลี่ยนเส้นทางเวอร์ชันที่ไม่ใช่ www ของเว็บไซต์ไปยังเวอร์ชัน www ของเว็บไซต์หรือในทางกลับกัน สิ่งนี้มักถูกลืม แต่อาจเป็นสาเหตุหลักของเนื้อหาที่ซ้ำกันในทุกเว็บไซต์ (ไม่ใช่แค่ Joomla)
Neil Robertson

ดูเหมือนว่าในที่สุดเราเตอร์ใหม่จะมองเห็นแสงของวันใน Joomla 3.8 และสิ่งนี้จะช่วยลดความยุ่งยากของ URL โดยไม่จำเป็นต้องมีส่วนขยายจากบุคคลที่สาม
Neil Robertson

1
@NeilRobertson: ฉันยังคิดว่ายังมีพื้นที่สำหรับการปรับปรุงและจำเป็นต้องใช้งานมากขึ้นในการแก้ปัญหาที่สมบูรณ์และมีประสิทธิภาพสำหรับการจัดการ SEF URL / ซ้ำซ้อนบน Joomla
FFrewin

@FFrewin ฉันเห็นด้วย ดูเหมือนว่าส่วนขยายของบุคคลที่สามอาจต้องได้รับการอัปเดตเพื่อใช้ประโยชน์จากเราเตอร์ใหม่
Neil Robertson

0

หากฉันมีรายการเมนูหลายรายการที่มีเนื้อหาเดียวกันฉันจะใช้นามแฝงของลิงค์ระบบ / รายการเมนูที่อยู่ในตัวจัดการเมนู นี่คือบทความเก่าเกี่ยวกับมัน; แต่วิธีนี้ยังคงมีอยู่ในปัจจุบัน: https://magazine.joomla.org/issues/issue-apr-2016/item/2997-avoid-duplicate-content-with-a-menu-item-alias

@ Neil ฉันเห็นด้วย 100% เกี่ยวกับเนื้อหาที่ไม่ใช่ www vs www ที่อ่านซ้ำซ้อน นี่คือรหัสที่บังคับให้ www ไม่ใช่ www วางไว้ในไฟล์ htaccess ของคุณ นอกจากนี้ยังเพิ่มโปรโตคอลความปลอดภัย https ด้วย รหัสนี้ไม่ใช่วิธีการเดียว แต่เป็นสิ่งที่ฉันใช้อย่างประสบความสำเร็จในหลาย ๆ ไซต์

RewriteCond %{HTTP_HOST} ^www.yourwebsite.com [NC]
RewriteRule ^(.*)$ https://yourwebsite.com/$1 [L,R=301]
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.