wp_nav_menu( array(
'theme_location' => '',
'menu' => '',
'container' => 'div',
'container_class' => '',
'container_id' => '',
'menu_class' => 'menu',
'menu_id' => '',
'echo' => true,
'fallback_cb' => 'wp_page_menu',
'before' => '',
'after' => '',
'link_before' => '',
'link_after' => '',
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>',
'depth' => 0,
'walker' => '',
) );
$meta_boxes[] = array(
'id' => THEME_SLUG . '_page_settings',
'title' => __( 'Page Settings', THEME_SLUG ),
'pages' => array( 'page' ),
'context' => 'normal',
'priority' => 'high',
'autosave' => true,
<blockquote> 'fields' => array(
// Subtitle
array(
'name' => 'Subtitle:',
'id' => THEME_SLUG . "_subtitle",
'type' => 'hidden'</blockquote>
),
<?php
global $wp_registered_sidebars;
$layout = isset($this->data['page_sidebar_position']) ? $this->data['page_sidebar_position'] : 'no';
$sidebars_list = array();
foreach ($wp_registered_sidebars as $sidebar => $attrs) {
$sidebars_list[$attrs['id']] = $attrs['name'];
}
$port_cats_array = array('none' => __('Default (All Categories)', THEME_SLUG));
$port_cats = get_terms( THEME_SLUG . '_portfolio_category', 'orderby=name&order=ASC&hide_empty=1' );
foreach ($port_cats as $key => $value) {
$port_cats_array[$value->term_id] = $value->name;
}
// PAGE
$meta_boxes[] = array(
'id' => THEME_SLUG . '_page_settings',
'title' => __( 'Page Settings', THEME_SLUG ),
'pages' => array( 'page' ),
'context' => 'normal',
'priority' => 'high',
'autosave' => true,
'fields' => array(
// Subtitle
array(
'name' => 'Subtitle:',
'id' => THEME_SLUG . "_subtitle",
'type' => 'hidden'
),
// Category for portfolio page
array(
'name' => __( 'Portfolio Category:', THEME_SLUG ),
'id' => THEME_SLUG . "_page_portfolio_cat",
'type' => 'select',
'desc' => __( 'Select category for this page. This category <b>should be</b> a parent category.', THEME_SLUG ),
'options' => $port_cats_array,
'std' => 'none',
),
// // Header Background
// array(
// 'name' => __('Header background:', THEME_SLUG),
// 'id' => THEME_SLUG . "_page_header_bg",
// 'type' => 'image_advanced',
// 'max_file_uploads' => 1,
// 'desc' => __( 'Select image from media library.', THEME_SLUG ),
// ),
// // Advanced Background Settings
// array(
// 'name' => __('Advanced background settings:', THEME_SLUG),
// 'id' => THEME_SLUG . "_page_header_advanced",
// 'type' => 'checkbox',
// 'std' => 0,
// 'desc' => __( 'It works <b>ONLY</b> if you choose a header background image above.', THEME_SLUG ),
// ),
// DIVIDER
// array(
// 'type' => 'divider',
// 'id' => THEME_SLUG . "_page_divider_id1", // Not used, but needed
// ),
// // Header Background Color
// array(
// 'name' => __('Page header background:', THEME_SLUG),
// 'id' => THEME_SLUG . "_page_header_bgcol",
// 'type' => 'color',
// 'std' => '#000'
// // 'desc' => __( 'Select image from media library.', THEME_SLUG ),
// ),
// // Background opacity
// array(
// 'name' => __( 'Background opacity:', THEME_SLUG ),
// 'id' => THEME_SLUG . "_page_header_bgcol_opacity",
// 'type' => 'slider',
// 'suffix' => ' %',
// 'std' => 0.40,
// // jQuery UI slider options. See here http://api.jqueryui.com/slider/
// 'js_options' => array(
// 'min' => 0.01,
// 'max' => 1,
// 'step' => 0.01,
// ),
// ),
// // Title Color
// array(
// 'name' => __('Page title color:', THEME_SLUG),
// 'id' => THEME_SLUG . "_page_title_col",
// 'type' => 'color',
// 'std' => '#FFF'
// ),
// Subitle Color
// array(
// 'name' => __('Subtitle color:', THEME_SLUG),
// 'id' => THEME_SLUG . "_page_subtitle_col",
// 'type' => 'color',
// ),
// array(
// 'type' => 'divider',
// 'id' => THEME_SLUG . "_page_divider_id2", // Not used, but needed
// ),
// Breadcrumbs
array(
'name' => __( 'Breadcrumbs:', THEME_SLUG ),
'id' => THEME_SLUG . "_page_breadcrumbs",
'type' => 'select',
'desc' => __( 'By default page used general theme settings, defined on '.THEME_NAME.' Options page.', THEME_SLUG ),
'options' => array(
'-1' => __( 'Default', THEME_SLUG ),
'1' => __( 'Show', THEME_SLUG ),
'0' => __( 'Hide', THEME_SLUG ),
),
'std' => '-1',
)
)
);
$meta_boxes[] = array(
'id' => THEME_SLUG . '_page_layout',
'title' => __( 'Page Layout', THEME_SLUG ),
'pages' => array( 'page' ),
'context' => 'side',
'priority' => 'low',
'autosave' => true,
'fields' => array(
// Layout
array(
'id' => THEME_SLUG . '_page_layout',
'type' => 'image_select',
'options' => array(
'right' => THEME_URI . '/core/options/redux-framework/ReduxCore/assets/img/2cr.png',
'no' => THEME_URI . '/core/options/redux-framework/ReduxCore/assets/img/1col.png',
'left' => THEME_URI . '/core/options/redux-framework/ReduxCore/assets/img/2cl.png',
),
'std' => $layout
),
// Sidebars
array(
'name' => null,
'id' => THEME_SLUG . "_page_widgets_area",
'desc' => __( 'Select widgets area for this page.', THEME_SLUG ),
'type' => 'select_advanced',
'multiple' => false,
'options' => $sidebars_list,
'placeholder' => __( 'Select Widgets Area', THEME_SLUG )
)
)
);
use Request;
use Image;
use Response;
use File;
use Input;
class UploadController extends Controller
{
/**
* Store a newly created resource in storage.
*
* @return Response
*/
public function store(Request $request)
{
$path = Request::input('now');
$files = Input::file('file');
$link = [];
foreach ($files as $file) {
if ($file) {
$directory = public_path() . '/zakaz/' . $path . '/temp/';
$linkpath = '/zakaz/' . $path . '/temp/';
$filename = uniqid() . str_replace(" ", "", $file->getClientOriginalName());
$upload_success = $file->move($directory, $filename);
if ($upload_success) {
$info = [$file->getClientOriginalName() => $linkpath . $filename];
$link += $info;
} else {
}
}
}
return Response::json($link);
}
public function imgSize(Request $request)
{
if (Request::ajax()) {
$data = Input::all();
$imageinfo = getimagesize(public_path() . $data['path']);
return Response::json($imageinfo);
}
}
public function changeName(Request $request)
{
if (Request::ajax()) {
$data = Input::all();
$json_url = "https://api.instagram.com/v1/users/search?q=" . $data['name'] . "&access_token=" . $data['sectoken'];
$json = file_get_contents($json_url);
$links = json_decode($json);
return Response::json($links->data[0]->id);
}
}
public function cropping(Request $request)
{
function getExtension($filename)
{
return substr($filename, strrpos($filename, '.') + 1);
}
function getFname($filename)
{
return basename($filename, "." . getExtension($filename));
}
if (Request::ajax()) {
$data = Input::all();
if (!file_exists(public_path() . '/zakaz/' . $data['now'] . '/temp/crop')) {
mkdir(public_path() . '/zakaz/' . $data['now'] . '/temp/crop', 0777, true);
}
$time = time();
$imgfp = imagecreatetruecolor(640, 640) or die("Cannot Initialize new GD image stream");
if (getExtension($data['image']) == 'jpeg' || getExtension($data['image']) == 'jpg' || getExtension($data['image']) == 'JPEG' || getExtension($data['image']) == 'JPG') {
//JPG
$crpf = imagecreatefromjpeg(public_path() . $data['image']); //crop file
$crpf = imagerotate($crpf, -$data['crop']['rotate'], 0);
imagecopyresampled($imgfp, $crpf, 0, 0, $data['crop']['x'], $data['crop']['y'], 640, 640,
$data['crop']['width'], $data['crop']['height']);
imagejpeg($imgfp, '../public/zakaz/' . $data['now'] . '/temp/crop/' . $time . '.jpg', 100);
imagedestroy($crpf);
$resp = 'http://'.$_SERVER['HTTP_HOST']."/zakaz/" . $data['now'] . "/temp/crop/" . $time . '.jpg';
} elseif (getExtension($data['image']) == 'png' || getExtension($data['image']) == 'PNG') {
//PNG
$crpf = imagecreatefrompng(public_path() . $data['image']); //crop file
$crpf = imagerotate($crpf, -$data['crop']['rotate'], 0);
imagecopyresampled($imgfp, $crpf, 0, 0, $data['crop']['x'], $data['crop']['y'], 640, 640,
$data['crop']['width'], $data['crop']['height']);
imagejpeg($imgfp, '../public/zakaz/' . $data['now'] . '/temp/crop/' . $time . '.jpg', 100);
imagedestroy($crpf);
$resp = 'http://'.$_SERVER['HTTP_HOST']."/zakaz/" . $data['now'] . "/temp/crop/" . $time . '.jpg';
} else {
$resp = "lol fuck you";
}
imagedestroy($imgfp);
return Response::json($resp);
}
}
}
if (!function_exists('pagination')) { // если ф-я уже есть в дочерней теме - нам не надо её определять
function pagination() { // функция вывода пагинации
global $wp_query; // текущая выборка должна быть глобальной
$big = 999999999; // число для замены
$links = paginate_links(array( // вывод пагинации с опциями ниже
'base' => str_replace($big,'%#%',esc_url(get_pagenum_link($big))), // что заменяем в формате ниже
'format' => '?paged=%#%', // формат, %#% будет заменено
'current' => max(1, get_query_var('paged')), // текущая страница, 1, если $_GET['page'] не определено
'type' => 'array', // нам надо получить массив
'prev_text' => 'Назад', // текст назад
'next_text' => 'Вперед', // текст вперед
'total' => $wp_query->max_num_pages, // общие кол-во страниц в пагинации
'show_all' => false, // не показывать ссылки на все страницы, иначе end_size и mid_size будут проигнорированны
'end_size' => 15, // сколько страниц показать в начале и конце списка (12 ... 4 ... 89)
'mid_size' => 15, // сколько страниц показать вокруг текущей страницы (... 123 5 678 ...).
'add_args' => false, // массив GET параметров для добавления в ссылку страницы
'add_fragment' => '', // строка для добавления в конец ссылки на страницу
'before_page_number' => '', // строка перед цифрой
'after_page_number' => '' // строка после цифры
));
if( is_array( $links ) ) { // если пагинация есть
echo '<ul class="pagination">';
foreach ( $links as $link ) {
if ( strpos( $link, 'current' ) !== false ) echo "<li class='active'>$link</li>"; // если это активная страница
else echo "<li>$link</li>";
}
echo '</ul>';
}
}
}
<?php if (have_posts()) : while (have_posts()) : the_post(); // если посты есть - запускаем цикл wp ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>> <?php // контэйнер с классами и id ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php // заголовок поста и ссылка на его полное отображение (single.php) ?>
<div class="meta">
<p>Опубликовано: <?php the_time(get_option('date_format')." в ".get_option('time_format')); ?></p> <?php // дата и время создания ?>
<p>Автор: <?php the_author_posts_link(); ?></p>
<p>Категории: <?php the_category(',') ?></p> <?php // ссылки на категории в которых опубликован пост, через зпт ?>
<?php the_tags('<p>Тэги: ', ',', '</p>'); // ссылки на тэги поста ?>
</div>
<div class="row">
<?php if ( has_post_thumbnail() ) { ?>
<div class="col-sm-3">
<a href="<?php the_permalink(); ?>" class="thumbnail">
<?php the_post_thumbnail(); ?>
</a>
</div>
<?php } ?>
<div class="<?php if ( has_post_thumbnail() ) { ?>col-sm-9<?php } else { ?>col-sm-12<?php } // разные классы в зависимости есть ли миниатюра ?>">
<?php the_content(''); // пост превью, до more ?>
</div>
</div>
</article>
<?php endwhile; // конец цикла