Skip to content

Instantly share code, notes, and snippets.

🤔
Thinking

Kolya Korobochkin korobochkin

🤔
Thinking
Block or report user

Report or block korobochkin

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@korobochkin
korobochkin / page.php
Created Feb 5, 2017
Example of WordPress template for supporting Jetpack Infinite Scroll module
View page.php
<?php get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<div id="stk-entries-list" class="entries-list">
<?php my_theme_render(); ?>
</div>
</main><!-- #main -->
@korobochkin
korobochkin / errors-sandbox.md
Created Dec 14, 2016
Convert Error objects to array
View errors-sandbox.md

I have a classes with Errors like this.

<?php
class Error implements ErrorInterface, ErrorRichInterface {
  public $code;
  public $message;
  public $messagePlain;
  public $data;
  
View maker-feedback.md

Замечания по поводу Maker

Ощущения

Оранжевый нотайс со словами про какую-то версию. Кажется что я могу обновить тему (внимание, вышла новая версия), но читая текст понимаешь что обновлять нечего. Надо тогда зеленый нотайс.

Очень клево что все элементы интерфейса нативные!

Сборка

@korobochkin
korobochkin / memory.php
Last active Aug 1, 2016
A simple example of memory leak in PHP
View memory.php
<?php
class A {
public $b;
function __destruct() {
//echo 'Уничтожается ', __CLASS__, PHP_EOL;
// Looks like no difference between "unset" and "null" method
//$this->b = null;
unset($this->b);
}
@korobochkin
korobochkin / responsive-embeds.php
Created Nov 4, 2015
Резиновые плееры YouTube и Vimeo
View responsive-embeds.php
<?php
function kk_embed_oembed_html_adaptive ($cache, $url, $attr, $post_ID) {
/**
* Отступ в 6 символов в начале ссылки, потому что есть http://
* (для https:// тоже сработает).
*/
if (
strpos ($url, 'youtu', 6)
||
strpos ($url, 'vimeo', 6)
View responsive-embed.md
<div class="embed-responsive embed-responsive-16by9">
  <iframe src="https://www.youtube.com/watch?v=nfWlot6h_JM"></iframe>
</div>

<style type="text/css">
/**
 * Контейнер, в котором будет существовать iframe.
 * Зануляем все, чтобы на высоту влиял лишь padding-bottom
 * (см. ниже).
@korobochkin
korobochkin / how-to-use-composer-in-wordpress.md
Created Aug 6, 2015
Что делать с Composer в WordPress?
View how-to-use-composer-in-wordpress.md

Как использовать Composer при разработке WordPress-плагина?

Ситуация такая. Я делаю WordPress-плагин, который использует стороннюю библиотеку (Instagram-PHP-API). В моем репозитории плагина структура файлов такая:

/
  | plugin
    | plugin.php // Главный файл плагина, который будет цеплять WordPress
    | // По идее здесь же и должен лежать все остальные мои классы
    | // и хлам из сторонних библиотек, автозагрузчик и т. п.
@korobochkin
korobochkin / WP_Form.php
Created Jul 21, 2015
A loop for WordPress wp-forms plugin
View WP_Form.php
<?php
class WP_Form implements WP_Form_Aggregate, WP_Form_Attributes_Interface {
public function get_elements_as_array() {
$result = (array)$this->get_elements_as_array_prepare( $this->elements );
return $result;
}
public function get_elements_as_array_prepare( array $elements ) {
$elements = array_values( $elements );
$result = array();
@korobochkin
korobochkin / mentorship-1-log.md
Last active Aug 29, 2015
Лог ключевых мыслей и ссылок из первого занятия по PHP
View mentorship-1-log.md

PHP Mentorship. Part 1

Лог ключевых мыслей и ссылок из первого занятия по PHP.

Список паттернов. Более подбробно про паттерн Registry.

Список фреймворков (их много):

  • Silex
  • Slim
  • Laravel (самый красивый сайтик ^_^)
  • Phalcon (компилируемый PHP, как си-расширение)
@korobochkin
korobochkin / mentorship-2.md
Last active Aug 29, 2015
Планируем что поделать на втором занятии менторшипа по PHP
View mentorship-2.md

PHP Mentorship. Part 2

Планируем что поделать на втором занятии по PHP.

Про WordPress

Насколько правильно и клево написан код WordPress Plugin Boilerplate?

Например, в файле class-plugin-name-loader.php видно, что сначала описываются просто переменные, а в методе __contruct() они заполняются данными.

You can’t perform that action at this time.