Jinsi ya Kubadilisha Blog URLs kuwa SEO Friendly kwa PHP na MySQL Bila Kuharibu Website Live kupitia faulink.com
Jifunze jinsi ya kubadilisha links za blog kutoka blog_viewer.php?id=1015 kwenda https://faulink.com/post-title-1015 kwa kutumia PHP, MySQL na .htaccess bila kuharibu website yako live. Tutorial hii ni nzuri kwa blogs, school systems, news websites na projects zote za PHP.
Utangulizi
Websites nyingi za PHP hutumia URLs kama:
blog_viewer.php?id=1015
Link hizi zinafanya kazi, lakini hazionekani professional kwa visitors wala Google SEO.
Mfano wa URL nzuri ni:
https://faulink.com/simple-complete-blog-system-1277
Hii URL:
inaonekana professional
ina keywords
ni nzuri kwa sharing
ni nzuri kwa Google indexing
Katika tutorial hii tutajifunza jinsi ya kufanya hivyo kwa njia salama kabisa kwa website live.
Kwa Nini SEO URLs ni Muhimu?
SEO URLs husaidia:
kuongeza Google ranking
kuongeza clicks
kufanya website ionekane professional
kuongeza trust kwa visitors
kuboresha sharing kwenye social media
Mfano wa URL Mbaya
https://www.faulink.com/blog_viewer.php?id=1015
Mfano wa URL Nzuri
https://faulink.com/simple-complete-blog-system-1277
Mfumo Tunaotumia
Katika tutorial hii tutatumia:
PHP
MySQL
PDO
Apache Rewrite Rules
.htaccess
Hatua ya 1 — Hakikisha Table Ina slug
Table yako ya posts inapaswa kuwa na:
slug
Mfano:
id
user_id
title
content
image_path
video_link
downloadable_file
created_at
author
category
file_path
youtube_link
tags
views
slug
meta_description
Hatua ya 2 — Generate Slugs
Run SQL hii:
UPDATE posts
SET slug = CONCAT(
LOWER(
TRIM(BOTH '-' FROM
REGEXP_REPLACE(title, '[^a-zA-Z0-9]+', '-')
)
),
'-',
id
)
WHERE (slug IS NULL OR slug = '')
AND title IS NOT NULL
AND title <> '';
Kwa Nini Tunaongeza ID?
Mfano:
Posts mbili zinaweza kuwa na title sawa:
How To Learn PHP
Kwa hiyo tunaongeza ID:
how-to-learn-php-1015
Hii huzuia duplicate URLs.
Hatua ya 3 — Tengeneza postUrl() Function
Kwenye blog_viewer.php:
function postUrl(array $post): string {
if (!empty($post['slug'])) {
return '/' . urlencode((string)$post['slug']);
}
return '/blog_viewer.php?id=' . (int)$post['id'];
}
Hatua ya 4 — Badilisha Links
Badala ya:
<a href="blog_viewer.php?id=<?= (int)$post['id'] ?>">
tumia:
<a href="<?= e(postUrl($post)) ?>">
Hatua ya 5 — Tengeneza .htaccess
Kwenye root folder:
public_html
tengeneza:
.htaccess
Weka code hii:
RewriteEngine On
DirectoryIndex index.php index.html
# Usiguse homepage
RewriteRule ^$ - [L]
# Usiguse files na folders halisi
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Usiguse pages muhimu
RewriteRule ^(admin|login|register|dashboard|about|contact|profile|assets|uploads|images|css|js)(/.*)?$ - [L]
# SEO blog URLs only
RewriteRule ^([a-zA-Z0-9-]+-[0-9]+)/?$ blog_viewer.php?slug=$1 [L,QSA]
Hatua ya 6 — Soma Slug kwenye PHP
Kwenye blog_viewer.php:
$postSlug = trim($_GET['slug'] ?? '');
Fetch Current Post
$stmt = $pdo->prepare("
SELECT * FROM posts
WHERE slug = ?
LIMIT 1
");
$stmt->execute([$postSlug]);
$currentPost = $stmt->fetch(PDO::FETCH_ASSOC);
Hatua ya 7 — Redirect Old URLs
Google bado inaweza kuwa imeindex links za zamani.
Mfano:
blog_viewer.php?id=1015
Tumia 301 redirect.
if ($currentPost && $postId > 0 && $postSlug === '' && !empty($currentPost['slug'])) {
header(
"Location: /" . urlencode((string)$currentPost['slug']),
true,
301
);
exit;
}
Hatua ya 8 — Add Canonical Tag
Kwenye <head>:
<?php if ($currentPost && !empty($currentPost['slug'])): ?>
<link rel="canonical"
href="https://faulink.com/<?= e((string)$currentPost['slug']) ?>">
<?php endif; ?>
Canonical Inasaidia Nini?
Google itaelewa official URL ni:
https://faulink.com/simple-complete-blog-system-1277
siyo:
https://www.faulink.com/blog_viewer.php?id=1277
Result ya Mwisho
Kutoka:
https://www.faulink.com/blog_viewer.php?id=1277
Kwenda:
https://faulink.com/simple-complete-blog-system-1277
Faida za Mfumo Huu
1. Better SEO
Google inaelewa keywords kwenye URL.
2. Better Sharing
Links zinaonekana professional kwenye WhatsApp na Facebook.
3. Better User Experience
Visitors wanaelewa page kabla ya kufungua.
4. Better Google Indexing
Canonical na 301 redirects husaidia Google kuhamia kwenye new URLs.
Je Mfumo Huu ni Salama kwa Website Live?
Ndiyo.
Kwa sababu:
old links bado zinafanya kazi
hakuna kuvunja database
hakuna kuvunja posts
hakuna kuvunja comments
hakuna kuvunja pagination
SEO Keywords
SEO friendly URLs
PHP slug tutorial
clean URLs PHP
PHP blog SEO
MySQL slug system
Apache rewrite tutorial
PHP SEO optimization
blog URL optimization
PHP .htaccess tutorial
canonical tag tutorial
Official Website
Kwa tutorials zaidi, coding guides na web development resources:
Conclusion
Kubadilisha URLs kutoka:
blog_viewer.php?id=1015
kwenda:
/simple-complete-blog-system-1277
🚀 Unahitaji mfumo au website ya biashara?
Chagua huduma hapa chini kisha mteja bofya moja kwa moja kwenda kwenye ukurasa wa huduma au kuwasiliana nasi kwa WhatsApp.