Cách liên kết Tiêu đề bài đăng với URL tùy chỉnh trên các Bài đăng đơn lẻ trong Genesis

Trong nhóm Genesis Facebook, một người dùng đã hỏi,

Tôi thực sự không phải là một lập trình viên và cần một số trợ giúp để giải quyết một vấn đề. Tôi thậm chí không chắc chắn rằng tôi đang đóng khung câu hỏi của mình một cách chính xác, nhưng đây là lý do.

Tôi đang trong quá trình thiết kế lại và chuyển đổi một trang web sử dụng chủ đề con tùy chỉnh không phải của Genesis thành chủ đề con của Genesis. Chủ đề tùy chỉnh không phải của Genesis hiện tại có trường tùy chỉnh chứa liên kết (có tên là “liên kết”) được xác định trong đó.

Tôi tin rằng đoạn mã sau trong phần vòng lặp của tệp single.php áp dụng trường tùy chỉnh “liên kết” cho tiêu đề bài đăng nếu trường tùy chỉnh có mặt.

<?php if (get_post_meta($post->ID, 'link', true)) { ?>

<?php the_title(); ?>

<?php } else { ?>

<?php the_title(); ?>

<?php } ?> > ``` > > > > > > Tôi đã thêm thành công trường tùy chỉnh “liên kết” vào chủ đề con của Genesis, nhưng tôi không hiểu cách áp dụng url “liên kết” cho tiêu đề bài đăng khi trường tùy chỉnh được điền. Câu hỏi của tôi là, mã nào nên được áp dụng trong những tệp nào để đạt được cùng một hành động liên kết khi thích hợp trong chủ đề con của Genesis để url trường "liên kết" được áp dụng cho tiêu đề nếu bài đăng có trường "liên kết"? > > > > Hy vọng điều đó có ý nghĩa. Cảm ơn trước vì bất kỳ hướng dẫn nào bạn có thể có.

genesis_post_title_text bộ lọc có thể được sử dụng để bao bọc các tiêu đề bài đăng đơn lẻ với các liên kết tùy chỉnh tương ứng của chúng (nếu có).

Thêm phần sau vào functions.php của chủ đề con :

// Filter Post Title Text to wrap the title in a custom URL (if present)
add_filter( 'genesis_post_title_text', 'sk_post_title_text' );
function sk_post_title_text( $title ) {
	if ( is_singular( 'post' ) ) {
		$single_post_link = esc_url( get_post_meta( get_the_ID(), 'single_post_link', true ) );

		if ( $single_post_link ) {
			$title = '<a href="'.$single_post_link.'">'.$title.'</a>';
		}

	}

	return $title;
}

nơi single_post_link là tên của trường URL tùy chỉnh. Điều này có thể được tạo bằng ACF Pro.