Рубрики
PHP

Настройка WordPress

  • Настройка стиля WordPress
    • Внешний вид
      • Темы
        • Twenty Twenty = Активировать
  • привязка php файла к файлу php в WordPress по теме
    • Внешний вид\Редактор тем
  • Раздел Функций
    • localhost\wp-content\themes\twentytwenty\functions.php
      • include_once $_SERVER[‘DOCUMENT_ROOT’].’/IDE/wp/wp_functions.php’;
    • localhost\IDE\wp\wp_functions.php
      • include_once__DIR__.»/ajax_wp/main.php»;
  • localhost\wp-content\themes\twentytwenty\footer.php
    • include_once__DIR__.»/ajax_wp/main.php»;
include_once $_SERVER['DOCUMENT_ROOT'].'/IDE/src/WordPress/ToolTip/main.php';
Рубрики
Visual Studio Code WordPress project PHP

Настройка проекта в локальном редакторе VSCode для WordPress хостинга

  • настройка IDE
    • F:\project\VSCode\Web\OSPanel\domains\localhost\IDE
      • локальный путь редактирование проекта
    • добавить в список проектов IDE
      • плагин Projects Manager
  • создание GIT
    • .gitignore
    • структура проекта
      • src
      • dist
    • создание репозитория в GitHub
    • создание туннеля SSH на хостинг с WordPress (плагин SFTP)
      • .vscode\sftp.json
      • настройка на хостинге (на примере Джино)
        • добавить доступ для своего IP
      • uploadFolder
        • отправить файлы с локального проекта
Рубрики
back-end front-end PROJECT HTML PHP

«Записи» от WorldPress открываем через ссылку в окно с движением

function mypost_content_replace($content) {
 $id = str_replace(array('[post'),'',$content);
 $id = substr($id, 0,strpos($id,' '));
 return mypost_el($id);
}
function mypost_content_callback($matches) {
 return mypost_content_replace($matches[0]);
}
function mypost_content_write($content){
return preg_replace_callback('/\\[post.*?\\]/i','mypost_content_callback', $content);
}
$GLOBALS['myposts']=array();
function mypost_load_content($content,$name,$link,$ID,$title,$id){
$GLOBALS['myposts'][]=$ID;
$content = mypost_content_write($content);
$el='<div data-id="'.$ID.'" id="posts'.$ID.'" class="block-mouse data2206241820 color2206241820" style="padding:2px;font-size:9pt;display:none;position:absolute;z-index:1003">';

$el=$el."\n".'<div style="display:inline-block;font-weight: bold;color:red">'.$title.'</div><div style="float:right;display:inline-block">'.$id.'</div>';
	
$el=$el."\n".'<div class="btns" style="none">';
$el=$el."\n".'<div style="display:inline-block">'.$link.'</div>';
$el=$el."\n".'<a href="#" onclick="$(`.block-mouse`).css(`display`,`none`)" style="text-decoration: none;margin-right:2px;vertical-align: middle;float:right;display:inline-block;">Все</a>';
$el=$el."\n".'<img onclick="$(`#posts'.$ID.'`).css(`display`,`none`)" src="https://codegid.ru/img/close.png" style="margin-right:2px;cursor:pointer;float:right;display:inline
block;height:18px;width:18px">';
$el=$el."\n".'</div>';	
	
$el=$el."\n".'<div style="font-weight: bold;color:green">'.$name.'</div>';	
$el=$el."\n".'<div class="res" style="overflow:scroll;height:400px;width:400px;">'.$content.'</div></div>';
return $el;
}

function mypost_el($id){
	$ID='p'.$id;
	$href='https://codegid.ru/?p='.$id;
	
	$my_post=get_post($id);
	$name=$my_post->post_name;
	$name=urldecode($name);
	$title=$my_post->post_title;
	$content=$my_post->post_content;
	$link='<a title="'.$name.'" style="text-decoration: none;margin-right:2px;vertical-align: middle;display:inline-block;" target="_blank" href="'.$href.'">'.$title.'</a>';
	
	$post_categories = wp_get_post_categories($id);
	foreach( $post_categories as $c ){
		$cat = get_category($c);
		$cat = '<a style="text-decoration: none;color:green;margin-left:2px" href="'.get_category_link($cat->term_id).'">'.$cat->name.'</a>';
		$link=$cat.'/'.$link;
	}
	$el='<div style="margin-bottom:2px;"><a class="posts-root" onmouseover="posts_root_mouseover($(this))" data-id="'.$ID.'" style="text-decoration: none;margin-left:2px;" href="'.$href.'">'.$title.'</a></div>';
	if(array_search($ID,$GLOBALS['myposts']) == false){		
		$el=$el."\n".mypost_load_content($content,$name,$link,$ID,$title,$id);
	}
return $el;
}
  • Вызов через простой текст c вводом номера поста

[post10644 описание] 
Рубрики
плагин Visual Studio Code VSCode настройки VSCode плагины Debug PHP

VSCode.PHP.плагин «XDebug»

Настройка в редакторе VSCode
ctrl+shift+x
  • php debug
    установка плагина в VSCode
  • Настройка конфигурации в VSCode
    Run\Add Configuration…
    PHP
    launch.json
Запуск отладки в редакторе VSCode
ctrl+shift+d

Режимы отладки в разделе «ЗАПУСК И ОТЛАДКА»

  1. режим Listen for xdebug
  • открыть скрипт php для отладки в VSCode
  • отметить место отладки (brackpoint)
  • запустить отладку RUN в разделе «ЗАПУСК И ОТЛАДКА»
  • отрыть страницу в браузере
    http://localhost/project/ для XAMPP
Рубрики
плагин Debug PHP PHP настройки

Установка плагина Xdebug для PHP

Xdebug
помогает разработчику в отладке php-кода

В отличие от стандартных методов var_dumpprint_r
позволяет использовать удалённый отладчик в IDE построчно через брейк-пойнты. Данный метод поможет отследить значения переменных и ускорит процесс поиска ошибок в коде
  1. <?php echo phpinfo()?>
  2. инструкция установки Xdebug в php
    https://xdebug.org/wizard
  3. расположение Xdebug.dll
    …\php\ext\php_xdebug.dll
  4. …\php\php.ini
    инструкция в сервере xampp
...
[XDebug]
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.client_port = 9003
zend_extension="C:\xampp\php\ext\php_xdebug.dll"