if ( isset( $_POST['r_register-submit'] )) {
add_action('register_form','reg_show_fields',10,1);
if(!function_exists('reg_show_fields')){function reg_show_fields(){
echo'<input name="user_sex" type="text" class="input" value=""/>';
}}
add_action('user_register','my_user_registration');
function my_user_registration( $user_id ) {
// $_POST['user_sex'] проверена заранее...
update_user_meta($user_id,'user_sex',$_POST['user_sex']);
}
add_action('show_user_profile','функция, в которой добавляем поля');
add_action('edit_user_profile','функция, в которой добавляем поля');
add_action('personal_options_update','функция обработчик');
add_action('edit_user_profile_update','функция обработчик');
.dashicons-microphone::before{font-size:15px;margin-top:7px;}
.static::analytical_papers.$permitted_chars.
и что оно возвращает при каждом нажатии копки «добавить пункт». одно известно точно. Находясь на странице и кликнув дважды на добавить у Вас все данные будут одинаковыми $permitted_chars
do_settings_sections
?...
<textarea cols="44" rows="1" placeholder="<?php esc_html_e('Сформулируйте вопрос','VAB');?>" name="theme_settings[VAB_Diagramm]['+keyq+'][question]" value=""required></textarea>
...
if(бла бла бла){
foreach(VABMoD('VAB_Diagramm') as $k=>$v){
...
<textarea cols="44" rows="1" placeholder="'.esc_html__('Сформулируйте вопрос','VAB').'" name="theme_settings[VAB_Diagramm]['.$k.'][question]" value="" required="">'.VABMoD('VAB_Diagramm')[$k]['question'].'</textarea>
...
}
wp_enqueue_script( 'jquery' );
. Он уже подключен по умолчанию, как Вы и написали сами же. Вы только лишний раз заставляете проверить подключен ли скрипт. Если не работает, то проблема в Вашем коде или совместимости с подключенной версией.jQuery(document).ready(function($){
const $window = $(window);
$window.on('scroll', onScroll);
function onScroll() {
if($window.scrollTop() >= $window.height()) {
document.querySelector(".home .site-header").classList.add("shadow");
} else {
document.querySelector(".home .site-header").classList.remove("shadow");
}
}
});/*Конец Ready*/
global $post;
А может существует возможность извлечь из WP_Comment класс WP_Post?
var_dump($mass)
в цикле. смотрите, вникайте, гуглите, разберитесь с функциями. вырисовывайте нужную Вам разметку. данные родительского комментария по сути тоже есть var_dump(get_comment($mass->comment_parent))
function my_post_comment_meta_box( $comment ) {
$total=get_comments(
array(
'post_id'=>$comment->comment_post_ID,
'order'=>'ASC',
)
);
?><ol class="commentlist"><?php
foreach($total as $mass){
// var_dump($mass);
echo'<br><br>';
if(!empty($mass->comment_parent)){echo'<ul>';
// var_dump(get_comment($mass->comment_parent));
$comment_parent=get_comment($mass->comment_parent);
$ParcomId=$comment_parent->comment_ID;
echo 'Ответ на комментарий автора комментария с ID = '.$ParcomId.', данные которого берем из var_dump(get_comment($mass->comment_parent)):';
}
?>
<li class="" id="li-comment-<?php echo $mass->comment_ID;?>">
<div id="comment-<?php echo $mass->comment_ID;?>">
<div class="comment-author vcard">
<div class="comment-meta commentmetadata" style="float:right;">
<div class="commentEdit"><?php echo '<a href="'.get_site_url().'/wp-admin/comment.php?action=editcomment&c='.$mass->comment_ID.'">'.esc_html__('Редактировать','VAB').'</a>';?></div>
</div><?php
if(count_user_posts($mass->user_id)>0){$Text='';if(!empty(get_author_posts_url($comment->user_id))){$Text=esc_html__('Архив автора','VAB').' / ';}$LinkSt='<a href="'.get_author_posts_url($comment->user_id).'">'.$Text;$LinkEnd='</a>';}else{$LinkSt='';$LinkEnd='';}
printf('%1$s '.esc_html__('в','VAB').' %2$s',get_comment_date("l, F jS, Y",$mass->comment_ID),get_comment_date("H:i:s",$mass->comment_ID));
printf(' <cite class="fn">'.$LinkSt.'%s'.$LinkEnd.'</cite><span class="says"> '.esc_html__('пишет','VAB').':</span>',get_comment_author_link($mass->comment_ID));
comment_text($mass->comment_ID);?></div>
</div><?php
if(!empty($mass->comment_parent))echo'</ul>';
}
?></ol><?php
}
php_value date.timezone 'Europe/Samara'
Часовой пояс PHP по умолчанию изменён после загрузки WordPress вызовом функции date_default_timezone_set(). Это может повлиять на корректный расчёт значений даты и времени.
Где именно вы хотите изменить время?
// Создаем письмо
$mail = $phpmailer;
$mail->isSMTP(); // Отправка через SMTP
...
30-90 писем. Хотя лимиты разумеется есть. А потому, что с каждым отправленным Вами письмом Вы будете терять авторитет домена, которого у Вас итак нету. Даже в документации яндекса написано (нет под рукой ссылки) не прямым текстом, но! создав корпоративную почту, её надо «прокачивать», если начнете массово сразу слать письма, через пару писем уже в бан залетите. и пока вы не авторизуетесь в браузере в этой почте и с нее не отправите письмо ручками, блокировка не будет снята (проверено). По мере пользования ситуация будет улучшаться. Почему Вы будете терять авторитетность почты с каждым отправленным письмом? Все просто. Отправьте письмо и посмотрите служебные заголовки письма. Там будет реальный отправитель: что-то похожее на webmaster@server171.hosting.reg.ru. Ну а теперь подумайте вы отправляете письма с домена info@site.ru (и на него настроены ресурсные записи), а реальный отправитель hosting.reg.ru. Сами теперь скажите будете терять авторитет домена? вся фишка в конфигурации сервера. если Мы ставим на винде свой сервак мы можем поставить программу sendmail под каждый домен на этом серваке и настроить аутентификацию в sendmail.ini. на линукс, например, ssmtp. Суть в том, что нужна аутентификация. Так вот на рег.ру единственный способ полноценно отправлять письма это плагин (недели две, в свое время, вел активно переписку по этому вопросу с ребятами рег ру и яндекса т.к. не было зеленого замка на яндексе и на финале ребята рег ру ответили - «Простите, но у Вас один вариант это плагин», а по началу вовсе мазались. мол это проблемы на яндексе...), который будет проходить аутентификацию на сервере и оттуда, в конечном результате, отправлять письмо. ну тот же phpMailer, к примеру. Одно точно - хотите, что-то серьезное для рассылок, да надо свой почтовый сервер(хотя бы на отправку) или сервисами пользоваться (по любому платно). Ну и разумеется базу подписчиков надо набирать, а не покупать. Ибо одно не открытое письмо получателем уже минус репутации, а если нажата кнопка спам и того веселее. У Вас никогда небыло так: приходят с каого-нибудь отправителя письма, а вы их не читая в корзину... и через время почтовая служба майл Вам задает вопрос: «Мы заметили вы не читаете рассылки с этого адреса. Хотите заблокировать отправителя (или отписать от рассылки - точно не помню)». У меня майл не раз так спрашивал. В целом в двух словах всех мелочей не объяснить. Даже один не ловкий пробел при создании формы наградит спам балами. Сам рассылками не занимался на 100% не скажу, но, если бы все было так печально, то разве существовали бы такие тяжелые плагины для рассылок у вордпресс?? Быть может проблема в том, что люди не все учитывают, потому и блок ловят. Ведь не смотря на то, что эти плагины есть, это не значит, что ты не должен понимать как все устроено!?
Надеюсь ясно выразился
а не подскажешь, как сделать тоже самое, но чтобы несколько полей?
function update_basic_user_meta(){
global $current_user;
$u_meta=get_user_meta($current_user->ID,'u_meta',true);
$u_meta=!empty($u_meta)?$u_meta:array();
if(!empty($_POST['first_name'])){$u_meta['first_name']=$_POST['first_name'];}
if(!empty($_POST['communication_email'])){$u_meta['communication_email']=$_POST['communication_email'];}
update_user_meta($current_user->ID,'u_meta',$u_meta);
$u_meta=get_user_meta($current_user->ID,'u_meta',true);
$first_name=!empty($u_meta['first_name'])?$u_meta['first_name']:'';
$communication_email=!empty($u_meta['communication_email'])?$u_meta['communication_email']:'';?>
<form action="" method="POST" class="">
<input type="text" id="first_name" name="first_name" class="" value="<?php echo $first_name; ?>">
<input type="text" id="communicationEmail" name="communication_email" class="" value="<?php echo $communication_email; ?>">
<button class="" type="submit">Сохранять</button>
</form><?php }
update_basic_user_meta();
кстати, после добавления значения в поле вашим методом его не возможно удалить
function update_basic_user_meta2(){
global $current_user;
$communication_meta=!empty($_POST['communication_email'])?$_POST['communication_email']:'';
if(!empty($communication_meta)){update_user_meta($current_user->ID,'communication_email',sanitize_text_field($communication_meta));}
if(empty($communication_meta)&&!empty($_POST['mysubmit'])){delete_user_meta($current_user->ID,'communication_email');}
$communication_email=get_user_meta($current_user->ID,'communication_email',true);?>
<form action="" method="POST" class="">
<input type="text" id="communicationEmail" name="communication_email" class="" value="<?php echo !empty($communication_email)?$communication_email:''; ?>">
<input class="" type="submit" name="mysubmit" value="Сохранять">
</form><?php }
update_basic_user_meta2();
её наличия мало в wp-includes/comment.php
тут надо смотреть как оформлены комментарии в теме
некоторые темы даже могут не поддерживать фильтры и акшины вордпресс для добавления/изменений полей в форме комментариев