// Thêm đoạn mã này vào file functions.php của theme hoặc vào một file plugin tùy chỉnh.
function portfolio_dropdown_shortcode_featured_category($atts) {
ob_start(); // Bắt đầu lưu đầu ra
// Tham số truy vấn để lấy tất cả các bài viết loại 'sitelinks'
$args = array(
'post_type' => 'sitelinks',
'posts_per_page' => -1,
// Tham số tax_query bị loại bỏ nhưng có thể thêm lại nếu cần
/*'tax_query' => array(
array(
'taxonomy' => 'featured_item_category',
'field' => 'slug',
'terms' => 'lien-ket-website',
),
),*/
);
// Tạo đối tượng WP_Query để lấy các bài viết
$portfolio_posts = new WP_Query($args);
if ($portfolio_posts->have_posts()) {
?>
<select id="sitelinks_dropdown" onchange="location.href = this.value;">
<option value="">--- Liên kết Website ---</option>
<?php while ($portfolio_posts->have_posts()) : $portfolio_posts->the_post(); ?>
<option value="<?php echo esc_url(get_the_content()); ?>"><?php echo esc_html(get_the_title()); ?></option>
<?php endwhile; ?>
</select>
<script>
// Thay đổi hành vi của dropdown khi lựa chọn một liên kết
document.getElementById('sitelinks_dropdown').onchange = function() {
var url = this.value;
if (url) {
window.open(url, '_blank'); // Mở liên kết trong tab mới
this.selectedIndex = 0; // Đặt lại chỉ mục của dropdown về mặc định
}
};
</script>
<?php
wp_reset_postdata(); // Đặt lại dữ liệu bài viết sau khi hoàn thành
}
return ob_get_clean(); // Trả về đầu ra đã được lưu
}
add_shortcode('lienketwebsite', 'portfolio_dropdown_shortcode_featured_category'); // Đăng ký shortcode