Имею достаточно хороший опыт в создание сайтов.
add_filter( 'template_include', 'services_single_template', 99 );
function services_single_template( $template ) {
if ( is_category( 'services' ) ) {
$new_template = locate_template( array( 'services-single-template.php' ) );
if ( '' != $new_template ) {
return $new_template;
}
}
return $template;
}
wpcf7_before_send_mail
для изменения email-адреса, думаю, он и для Вашей цели подойдет.add_action('wpcf7_before_send_mail', 'dco_wpcf7_before_send_mail');
function dco_wpcf7_before_send_mail($contact_form) {
$submission = WPCF7_Submission::get_instance();
$data = & $submission->get_posted_data();
$employee_name = $data['employee-name'];
$post = get_page_by_title($employee_name, OBJECT, 'employee');
$email = get_post_meta($post->ID, 'employee_email', true);
if ($email) {
$mail = $contact_form->prop('mail');
$mail['recipient'] = $email;
$contact_form->set_properties(array('mail' => $mail));
}
}
На изображении пример того как я транслирую картинки с фотохостинга "Flickr" в простую HTML разметку. Можно нечто подобное сделать в "WordPress"?
add_action('customize_register', 'dco_customize_register');
function dco_customize_register($wp_customize) {
//FOOTER
$wp_customize->add_section('footer', array(
'title' => 'Подвал',
'priority' => 1,
));
//footer text
$setting_name = 'footer_text';
$wp_customize->add_setting($setting_name, array(
'default' => '',
'sanitize_callback' => 'sanitize_textarea_field',
'transport' => 'postMessage'
));
$wp_customize->add_control($setting_name, array(
'section' => 'footer',
'type' => 'textarea',
'label' => 'Текст в подвале',
));
$wp_customize->selective_refresh->add_partial($setting_name, array(
'selector' => '.footer-desc',
'render_callback' => function() use ($setting_name) {
return nl2br(get_theme_mod($setting_name));
}
));
}
<div class="footer-desc"><?php echo nl2br(get_theme_mod('footer_text')); ?></div>
require_once("/path/wp-load.php");
function gallery_function($attr, $text=''){
// получаем массив ID картинок
$img_src = explode(",", $attr['ids']);
// шаблон удаления атрибутов width/height
$pattern = '#(width|height)="\d+"#';
$return = '<div class="clear"></div><div class="article__slider">';
// счетчик
$i = 1;
foreach ($img_src as $item) {
// получаем HTML-код картинки
$image_url = wp_get_attachment_image_url( $item, 'thumb_slider' );
// вырезаем атрибуты width/height
$image_url = preg_replace($pattern, "", $image_url);
// формируем вывод картинок
$return .= '<img alt="" class="article__slide" src="'.$image_url.'">';
$i++;
}
$return .= '
</div><div class="clear"></div>';
return $return;
}
add_shortcode('galleryjan','gallery_function');
if ( function_exists( 'coauthors_posts_links' ) ) {
coauthors_posts_links();
} else {
the_author_posts_link();
}
Geolocate with page caching support is the same as above, but does the geolocation via Ajax. You may notice your website URLs have a ?v=xxxxx appended to them. This is normal to prevent static caching of prices.