it-swarm.asia

تصميم URL للوظائف الفرعية؟

لدي حاليا هذا:

mysite.com/product-name
mysite.com/another-product

الخ حيث اسم المنتج ومنتج آخر هي المشاركات.

لديّ بعد ذلك نوع منشور مخصص يسمى Changelogs ، لديّ لكل منتج ، هل من الممكن الحصول على عنوان url مثل

mysite.com/product-name/changelog
mysite.com/another-product/changelog

إذا كان الأمر كذلك ، كيف يمكنني القيام بذلك؟

1
Adam Dempsey

لا يوجد شيء مثل "مشاركات فرعية" في وورد بنيت بالفعل في.

ولكن من الممكن أن تقوم بإنشاء مكون إضافي يقدم "مشاركات فرعية" في النمط الذي تصفه لهم.

من الناحية الفنية ، فأنت لا تتحدث عن النقاط الفرعية ولكن عن عنوان URL. لذا في Wordpress ، يمكنك إضافة نقطة نهاية ("سجل التغيير") يمكنك التعامل مع بعض المكونات الإضافية ، على سبيل المثال تبديل العرض إلى منشور آخر.

بمجرد أن هذا لم يكن يعمل بشكل صحيح مع نقاط النهاية ، لكنني أعتقد أنه تم حلها بطريقة أو بأخرى الآن. لم تستخدمه بشدة ، لذا فإن إجابتي مفيدة فقط حتى الآن.

ذات صلة:

3
hakre

مرحبًا @ آدم:

كما تعلم ربما يتم تخزين جميع "المنشورات" في نفس جدول قاعدة البيانات لـ "المنشورات" ، "الصفحات" وأي أنواع نشر مخصص.

أذكر السابق للتأكيد على أن جميع "المنشورات" لديها الحقل post_parent متاح وقد استخدمته بنجاح لإنشاء أصل رئيسي العلاقة بين ، على سبيل المثال ، نوع نشر 'restaurant' ونوع نشر 'restaurant-location'.

ومع ذلك ، فإن عناوين URL أكثر تعقيدًا ، وأنا متعصب عندما يتعلق الأمر بـ عناوين URL جيدة التصميم لذلك كنت ترغب في ذلك أعلم أنني سوف ننظر إلى حد كبير.

لقد نفذت الكود الذي يجب أن أقوم به بشكل مشابه لما تطلبه (على سبيل المثال ، المطعم/الموقع) ولكنه هش للغاية ولديه القدرة على قم بإنشاء تأثيرات جانبية غير مرغوب فيها مع مكونات إضافية ، لذلك أخشى نشرها هنا مما تسبب في حدوث مشكلات أكبر من الأشخاص أكثر من المساعدة.

على الرغم من أن بعض مطوري WordPress الأكثر تشددًا لا يظنون بشكل متكرر trac و قائمة wp-hackers هناك مشكلة باستخدام نظام توجيه عناوين URL ، أعلم أي شخص آخر من حاول فعلاً استخدامه لأي نمط آخر إلى جانب صراعات التدوين معه واكتشف أنه يثير غضبًا. لهذا السبب ، قدمت هذه التذكرة وآمل أن أحصل على بعض الوقت المخصص لتناولها في المستقبل القريب:

إن استخدام عناوين URL جيدة التصميم حاليًا هو أمر صعب للغاية ومحفوف بالمخاطر بحيث لا يكون خيارًا قابلاً للتطبيق. لذلك على المدى القصير أوصي حقًا باستخدام تخطيط عنوان URL القياسي حتى أحصل على وقت فراغ كافٍ لمعالجته ، أو يقوم شخص آخر بتحسين نظام توجيه عنوان URL الخاص بـ WordPress أو حتى يقوم شخص ما بتوظيفي ل اصلحه.

لسوء الحظ أعرف أنها لم تكن الإجابة التي كنت تبحث عنها ولكنها كانت صادقة وقلبية.

0
MikeSchinkel

بعد الانتهاء من الإجابة أعلاه ، يبدو لي أنك قد تكون قادرًا على تحقيق ما تريد ببساطة أكثر ، وكنت أفكر أولاً من خلال الاستفادة من الإجابة التي كتبتها في هذا السؤال:

أعلم أن عنوان السؤال لن يعني لك أنه سيكون ذا صلة ولكن السؤال كان في جوهره عن "نشر فرعي" نوع المعلومات وعناوين URL ذات الصلة.

آسف ، لم يحدث ذلك لي إلا بعد نشر الإجابة أعلاه.

0
MikeSchinkel

لقد عدت إلى هذا المشروع بعد عدم العمل عليه لفترة من الوقت وهذا ما حصلت عليه:

كما هو الحال مع الأمثلة السابقة حيث لدي:

mysite.com/product-name/changelog mysite.com/another-product/changelog

تلك منشورات (من نوع سجل التغيير) ، والقيمة البادئة الفعلية هي changelog للمنتج

ثم استخدم المكون الإضافي Redirection للقيام بالمرور من

​/([a-zA-Z0-9-]*)​/changelog​/$

إلى

/$1-changelog/

لكن ينتهي الأمر بإعادة التوجيه كـ 301 إلى mysite.com/product-name- changelog

لقد حاولت الربط بين wp_redirect و canonical_redirect حتى أتمكن من محاولة إيقاف إعادة التوجيه ولكن دون أي حظ حتى الآن.

أي اقتراحات بشأن ماذا لمحاولة؟

0
Adam Dempsey