CẬP NHẬT: Câu hỏi ban đầu của tôi đã được giải quyết, nhưng điều này đang chuyển thành một cuộc thảo luận hợp lệ về lý do tại sao không sử dụng các biến toàn cục, vì vậy tôi đang cập nhật câu hỏi để phản ánh điều đó. Giải pháp là <?php global $category_link_prop; echo esc_url( $category_link_prop ); ?>
như @TomJNowell đề xuất.
CẬP NHẬT 2: Bây giờ tôi có nó làm chính xác những gì tôi muốn. Nhưng tôi vẫn đang sử dụng phạm vi toàn cầu và sẽ rất vui khi tìm thấy một cách tốt hơn.
Tôi đang cố gắng thiết lập một loạt các biến toàn cục cho permalinks đến các danh mục sẽ được sử dụng ở nhiều nơi trong chủ đề của tôi. Lý do chính cho việc này là để sử dụng trong cả điều hướng chính, cũng như trong một loạt các điều hướng phụ được chọn dựa trên danh mục bài đăng hiện tại. Đây không phải là chủ đề tôi sẽ phát hành để sử dụng cho người khác, nhưng được xây dựng cho một mục đích rất cụ thể.
Đây là cách tôi hiện đang tạo chúng (Tôi chỉ dán một vài biến).
function set_global_nav_var()
{
//proposal
global $prop;
// Get the ID of a given category
$category_id_prop = get_cat_ID( 'proposal' );
// Get the URL of this category
$category_link_prop = get_category_link( $category_id_prop );
$prop = '<a href="' .esc_url( $category_link_prop ). '" title="Proposal">Proposal</a>';
//Calvinball
global $cb;
// Get the ID of a given category
$category_id_cb = get_cat_ID( 'calvinball' );
// Get the URL of this category
$category_link_cb = get_category_link( $category_id_cb );
$cb = '<a href="' .esc_url( $category_link_cb). '" title="Calvinball">Calvinball</a>';
}
add_action( 'init', 'set_global_nav_var' );
Bây giờ tôi có thể thực hiện <?php global $prop; echo $prop; ?>
int he 4 nơi mà đi và lấy lại toàn bộ liên kết cho mã. Khi điều đó thay đổi tôi chỉ cần thay đổi nó ở một nơi. Tôi mở cho các lựa chọn thay thế không liên quan đến phạm vi toàn cầu.