راهنمایی برای نمایش title به جای نام فایل در breadcrumb در PHP

سلام امیدوار که حالتون خوبه خوب باشه من این سوال رو به این دلیل میپرسم که وقتی با این مشکل روبرو شدم منبعی برای BreadCrumb حداقل تو ایران و توران نبود.

سوال اینه که من یک Bread crumb ساختم و میخوام نام صفحه یا همون title رو نمایش بده ممنون میشم راهنمایی کنید. این کدها فقط نام فایل رو نشون میدن مثلا index.php یا detail.php

<?php
function get_breadcumb(){

    if($location = substr(dirname($_SERVER['PHP_SELF']), 1))
        $dirlist = explode('/', $location);
    else
        $dirlist = array();

    $count = array_push($dirlist, basename($_SERVER['PHP_SELF']));

    $address = 'http://'.$_SERVER['HTTP_HOST'];

    for($i = 0; $i < $count; $i++)
        echo "<li class=\"breadcrumb-item\" aria-current=\"page\"><a href=\"($address .= '/'.$dirlist[$i])\"><span class='mx-1'></span>$dirlist[$i]</a></li>";
}

?>

کدهای HTML

<nav aria-label="breadcrumb">
  <ol class="breadcrumb">
      <?php get_breadcumb(); ?>
  </ol>
</nav>

 

برچسب ها:
پرسیده شده در: 5 سال قبل
آمار بازدید: 1053
0

سلام

شما باید مقدار URI درخواست را بدست آورده و آنرا پردازش کنید. این مقدار در آرایه SERVER ذخیره شده است.

$uri = $_SERVER['REQUEST_URI'];
$path = explode('/', $uri);

foreach($path AS $slug) {
    $title = get_post_title_by_slug($slug);
}

برای مثال آدرس URI همین صفحه را در نظر بگیرید:

https://www.roxo.ir/q/questions/375/tips-for-displaying-title-instead-of-file-name-in-breadcrumb-in-php

مقدار متغیر uri$ در آدرس فوق برابر است با :

q/questions/375/tips-for-displaying-title-instead-of-file-name-in-breadcrumb-in-php/

با استفاده از متد explode رشته را تجزیه کرده و با استفاده از اطلاعاتی که در پایگاه داده شما (جدول posts) می توانید عنوان موردنظر را بدست آورید.

در حلقه تابع ()get_post_title_by_slug با استفاده از آرگومان ورودی (slug$) عنوان پست مربوطه را دریافت می کند.

توضیح بیشتر اینکه آدرس  URI را شما خودتان تعیین می کنید و بر اساس آن باید پردازش های لازم را انجام دهید. هر نوشته ای (post) در جدول post ذخیره شده که یکی از فیلدهای آن slug است که می تواند مقدار آن فارسی یا انگلیسی باشد.

ارسال شده در: 5 سال قبل
Amir1984 (70)
فروشنده یا مدرس فروشنده یا مدرس بیش از ۱ سال عضویت در روکسو بیش از ۱ سال عضویت در روکسو میانگین امتیازات: 5 میانگین امتیازات: 5
جهت ارسال پاسخ ابتدا عضو سایت شوید.