benzer alanlar olması kaydıyla şu sorguyla çözebilirsin:
if ($searchQuery) {
$content = $db->rawQueryOne("
SELECT *
FROM (
SELECT 'articles' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime
FROM articles
WHERE title LIKE ? OR description LIKE ? OR content LIKE ?
UNION ALL
SELECT 'pages' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime
FROM pages
WHERE title LIKE ? OR description LIKE ? OR content LIKE ?
UNION ALL
SELECT 'portfolios' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime
FROM portfolios
WHERE title LIKE ? OR description LIKE ? OR content LIKE ?
) AS combined_tables
WHERE slug = ?",
[
"%$searchQuery%", "%$searchQuery%", "%$searchQuery%",
"%$searchQuery%", "%$searchQuery%", "%$searchQuery%",
"%$searchQuery%", "%$searchQuery%", "%$searchQuery%",
$urlAddress[0]
]
);
} else {
$content = $db->rawQueryOne("
SELECT *
FROM (
SELECT 'articles' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime FROM articles
UNION ALL
SELECT 'pages' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime FROM pages
UNION ALL
SELECT 'portfolios' AS source_table, id, slug, picture, title, content, description, createdDateTime, modifiedDateTime FROM portfolios
) AS combined_tables
WHERE slug = ?",
[$urlAddress[0]]
);
}