Merge pull request #1 from holger1411/master

update
This commit is contained in:
Kostas Vrouvas 2017-04-23 16:53:01 +03:00 committed by GitHub
commit 8596e8faf7
286 changed files with 60073 additions and 5233 deletions

7
.gitignore vendored
View File

@ -1,3 +1,4 @@
.sass-cache
bower_components
@ -5,6 +6,8 @@ node_modules
understrap.zip
src
dist
dist-product
npm-debug.log

7
.jscsrc Normal file
View File

@ -0,0 +1,7 @@
{
"preset": "wordpress",
"fileExtensions": [ ".js" ],
"excludeFiles": [
"js/**.min.js"
]
}

1
.jshintignore Normal file
View File

@ -0,0 +1 @@
js/**.min.js

69
.travis.yml Normal file
View File

@ -0,0 +1,69 @@
# Travis CI (MIT License) configuration file for the Underscores WordPress theme.
# @link https://travis-ci.org/
# For use with the UnderStrap WordPress theme
# @link https://github.com/holger1411/understrap
# Ditch sudo and use containers.
# @link http://docs.travis-ci.com/user/migrating-from-legacy/#Why-migrate-to-container-based-infrastructure%3F
# @link http://docs.travis-ci.com/user/workers/container-based-infrastructure/#Routing-your-build-to-container-based-infrastructure
sudo: false
# Declare project language.
# @link http://about.travis-ci.org/docs/user/languages/php/
language: php
# Declare versions of PHP to use. Use one decimal max.
# @link http://docs.travis-ci.com/user/build-configuration/
matrix:
fast_finish: true
include:
# Current $required_php_version for WordPress: 5.2.4
# aliased to 5.2.17
- php: '5.2'
# aliased to a recent 5.6.x version
- php: '5.6'
env: SNIFF=1
# aliased to a recent 7.0.x version
- php: '7.0'
env: SNIFF=1
# aliased to a recent 7.1.x version
- php: '7.1'
# aliased to a recent hhvm version
- php: 'hhvm'
allow_failures:
- php: 'hhvm'
# Use this to prepare the system to install prerequisites or dependencies.
# e.g. sudo apt-get update.
# Failures in this section will result in build status 'errored'.
# before_install:
# Use this to prepare your build for testing.
# e.g. copy database configurations, environment variables, etc.
# Failures in this section will result in build status 'errored'.
before_script:
- export PHPCS_DIR=/tmp/phpcs
- export SNIFFS_DIR=/tmp/sniffs
# Install CodeSniffer for WordPress Coding Standards checks.
- if [[ "$SNIFF" == "1" ]]; then git clone -b master --depth 1 https://github.com/squizlabs/PHP_CodeSniffer.git $PHPCS_DIR; fi
# Install WordPress Coding Standards.
- if [[ "$SNIFF" == "1" ]]; then git clone -b master --depth 1 https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git $SNIFFS_DIR; fi
# Install PHP Compatibility sniffs.
- if [[ "$SNIFF" == "1" ]]; then git clone -b master --depth 1 https://github.com/wimg/PHPCompatibility.git $SNIFFS_DIR/PHPCompatibility; fi
# Set install path for PHPCS sniffs.
# @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941
- if [[ "$SNIFF" == "1" ]]; then $PHPCS_DIR/scripts/phpcs --config-set installed_paths $SNIFFS_DIR; fi
# After CodeSniffer install you should refresh your path.
- if [[ "$SNIFF" == "1" ]]; then phpenv rehash; fi
# Run test script commands.
# Default is specific to project language.
# All commands must exit with code 0 on success. Anything else is considered failure.
script:
# Search for PHP syntax errors.
- find -L . -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l
# Run WordPress Coding Standards checking
- if [[ "$SNIFF" == "1" ]]; then $PHPCS_DIR/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php --ignore=*/woocommerce/*,*/inc/*; fi

104
404.php
View File

@ -1,77 +1,83 @@
<?php
/**
* The template for displaying 404 pages (not found).
*
* @package understrap
*/
get_header(); ?>
get_header();
?>
<div class="wrapper" id="404-wrapper">
<div id="content" class="container">
<div class="row">
<div id="primary" class="content-area">
<div class="container" id="content">
<main id="main" class="site-main" role="main">
<div class="row">
<section class="error-404 not-found">
<header class="page-header">
<div class="content-area" id="primary">
<h1 class="page-title"><?php _e( 'Oops! That page can&rsquo;t be found.', 'understrap' ); ?></h1>
</header><!-- .page-header -->
<main class="site-main" id="main" role="main">
<div class="page-content">
<section class="error-404 not-found">
<p><?php _e( 'It looks like nothing was found at this location. Maybe try one of the links below or a search?', 'understrap' ); ?></p>
<header class="page-header">
<?php get_search_form(); ?>
<h1 class="page-title"><?php esc_html_e( 'Oops! That page can&rsquo;t be found.',
'understrap' ); ?></h1>
<?php the_widget( 'WP_Widget_Recent_Posts' ); ?>
</header><!-- .page-header -->
<?php if ( understrap_categorized_blog() ) : // Only show the widget if site has multiple categories. ?>
<div class="page-content">
<div class="widget widget_categories">
<p><?php esc_html_e( 'It looks like nothing was found at this location. Maybe try one of the links below or a search?',
'understrap' ); ?></p>
<h2 class="widget-title"><?php _e( 'Most Used Categories', 'understrap' ); ?></h2>
<?php get_search_form(); ?>
<ul>
<?php
wp_list_categories( array(
'orderby' => 'count',
'order' => 'DESC',
'show_count' => 1,
'title_li' => '',
'number' => 10,
) );
?>
</ul>
<?php the_widget( 'WP_Widget_Recent_Posts' ); ?>
</div><!-- .widget -->
<?php endif; ?>
<?php if ( understrap_categorized_blog() ) : // Only show the widget if site has multiple categories. ?>
<?php
/* translators: %1$s: smiley */
$archive_content = '<p>' . sprintf( __( 'Try looking in the monthly archives. %1$s', 'understrap' ), convert_smilies( ':)' ) ) . '</p>';
the_widget( 'WP_Widget_Archives', 'dropdown=1', "after_title=</h2>$archive_content" );
?>
<div class="widget widget_categories">
<?php the_widget( 'WP_Widget_Tag_Cloud' ); ?>
<h2 class="widget-title"><?php esc_html_e( 'Most Used Categories', 'understrap' ); ?></h2>
</div><!-- .page-content -->
</section><!-- .error-404 -->
<ul>
<?php
wp_list_categories( array(
'orderby' => 'count',
'order' => 'DESC',
'show_count' => 1,
'title_li' => '',
'number' => 10,
) );
?>
</ul>
</main><!-- #main -->
</div><!-- #primary -->
</div><!-- .widget -->
<?php endif; ?>
<?php
/* translators: %1$s: smiley */
$archive_content = '<p>' . sprintf( __( 'Try looking in the monthly archives. %1$s',
'understrap' ), convert_smilies( ':)' ) ) . '</p>';
the_widget( 'WP_Widget_Archives', 'dropdown=1', "after_title=</h2>$archive_content" );
?>
<?php the_widget( 'WP_Widget_Tag_Cloud' ); ?>
</div><!-- .page-content -->
</section><!-- .error-404 -->
</main><!-- #main -->
</div><!-- #primary -->
</div> <!-- .row -->
</div><!-- Container end -->
</div> <!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

221
CHANGELOG.md Normal file
View File

@ -0,0 +1,221 @@
- ** Release 0.6.0 (skipping 0.5.8 and 0.5.9 ) Apr. 21th 2017 **
- Adding WooCommerce 3.0.0 support - Big thx @typeplus
- Add npm-debug.log to .gitignore file - thx @OussamaElgoumri
- Adding swedish translation files
- Fixing problems if both forms (login and register) are present
- Adding image optimization task to gulpfile - thx @VesterDe
- Removing old and unused BS4 Alpha 5 variables
- Include call to jQuery into if block - hx @wingertjp
- phpcs fixes - thx @typeplus
- Fixing col-1 problem on my account WooCommerce page
- Updating Font Awesome imports
- ** Release 0.5.7 Feb. 13th 2017 **
- Fixing WooCommerce base layout by reverting custom woocommerce integration and switch back to default integration
- Adding /js/ folder to watcher task excluding theme.js and theme.min.js
- Removing duplicate DIV from "both-sidebars" page template - Thx @evandiamond
- Fixing sidebar check
- Remove customizer from theme.min.js
- ** Release 0.5.6 (skipping 0.5.5) Feb. 9th 2017 **
- Adding automated tests - thx @carl-alberto
- Remove custom Bootstrap gellery completely
- Fixing typos - thx to @catgofire
- Checking for WP coding standards
- Adding a "dist-product" gulp task
- Adding WooCommerce form-checkout.php - thx @stef-k
- Fixing bug #240 - thx @arpage
- Adding AJAX classes to add-to-cart buttons - thx @typeplus
- Updating Jetpack integration
- Fixing "missing" h1 on frontpage problem
- Updating inc/template-tags.php from _s
- Fixing W3C validator issues
- Removing cleancss gulp task from cssnano task sequence due to performance issues
- ** Release 0.5.4 Jan. 25th 2017 **
- Fixing problems with dynamic sidebars (footerfull and statichero) - Thx @NayeemNipun
- Removes Owl Carousel slider and replace it with the BS4 carousel
- Fixing "both sidebars" problem - Thx @ZXCVLuke
- SEO improvements - Thx @raisonon
- CSS cleanup
- Updating dependencies
- ** Release 0.5.3 Jan. 12th 2017 **
- Updating dependencies
- Adding BS4 styles to editor style formats - Thx @ZXCVLuke
- Adding theme css to editor
- Dynamize the full footer and static hero widget area.
- Custom header preparations
- adding customizer edit icon support
- Fixing "no sidebar" problem
- Update Custom Logo Tags - Thx @jessijean
- ** Release 0.5.2 Jan. 7th 2017 **
- Updating to Bootstrap 4 Alpha 6
- Fixing german translation issues
- Cleanup navbar code
- Cleanup underStrap Sass file
- Fixing browsersync issues
- Removing one page vertical template
- Update dependencies
- ** Release 0.5.1 Dec. 29th 2016 **
- Adding spanish translation
- Translation updates for: Greek, German, French
- Updating language bas file
- Streamlining Gulp tasks
- Adding WooCommerce templates
- Adding Contact Form 7 support
- Fixing W3C validator issues
- Adding BS4 pagination
- Adding BS4 article nav
- Include /JS folder to watcher task
- Some SEO improvements (especially h1 for article titles on single item pages, etc.)
- Adding italian language
- General bug fixing
- Fixing live preview for customizer
- Font Awesome update
- Udating all npm dependencies
- ARIA roles update
- Updating hamburger icon behavior
- ** Release 0.5.0 Nov. 24th 2016 **
- Update Owl Carousel to 2.2.0
- Update Font Awesome to 4.7.0
- Greek language file added - Thx @stef-k
- Portugese language file added - Thx @jfig
- Adding vertical-one-page template for landingpages - Thx @stef-k
- Making all theme functions pluggable to allow child themes to overwrite ´em
- French language file added - Thx @tchama
- Adding article pagination and page nav BS4 markup - Thx @stef-k & @Thomas-A-Reinert
- Adding dynamic sidebar function - Thx @stef-k
- Korean language file added
- Basic WooCommerce templates added
- Fixing "Gulp dist" Task
- Adding masonry layout option to optimizer - Thx @stef-k
- Adding fluid/fixed conatiner option to optimizer
- ** 0.4.9 Oct. 25th 2016 **
- Updating to Bootstrap 4 Alpha 5
- Using the correct BS4 markup for navbar - Thx @tedgeving
- Inject theme name and version into the footer dynamically - Thx @maxdmyers
- Adding a blank template for building up a landingpage via WP editor or as blank canvas for Visual Compoeser etc. - Thx @omarusman
- Fixing problem with empty folders after "gulp dist" - Thx @alwizo
- Fixed custom logo function typo - Thx @willgorham
- ** 0.4.8 Oct. 10th 2016 **
- Removing Bower and replace the dependency managment with npm
- Update to Bootstrap 4 Alpha 4
- Optimizing WooCommerce loop - Thx @typeplus
- Updating all dependencies
- Add WP Theme logo feature - Thx @jessijean
- ** 0.4.7 Aug. 15th 2016 **
- Fixing problem with tag page
- Fixing Navbar "hopping"
- Global bugfixing and streamlining performance issues
- ** 0.4.6 Aug. 1st 2016 **
- Update to Bootstrap 4 Alpha 3
- Adding basic padding to aligned content images
- Adding author.php template with author infos
- Correct language file + german translation
- ** 0.4.5 Jun. 20th 2016 **
- Adding right sanitizing function for customizer
- Fixing some escaping problems
- Removing "add script" customizer function
- Calling all sidebars with "get_sidebar"
- Load hero area on index.php conditionally
- Remove unused code, files and dependencies
- Adding credits for WP Bootstrap Navwalker by Edward McIntyre
- ** 0.4.4 Jun. 18th 2016 **
- Adding the new empty.php page template. Comes just with header, footer and a content area without markup. Good for build up landingpages. An empty canvas for your Bootstrap markup.
- Update bower.json dependencies to latest versions
- Update package.json dependencies to latest versions
- Adding Theter script as dependency for BS4 tooltip component
- Resorting gulpfile.js
- Removing BS3 completely as dependency
- Smaller bugfixes and code improvements
- ** 0.4.0 Apr. 29th 2016 **
- Switching from Bootstrap 3 to Bootstrap 4
- Adding BrowserSync to gulpfile (again thx to @dvlopes)
- Preparing the navbar markup so that the current version will work with Bootstrap 3 AND 4
- Adding "gulp scripts" command - This uglifies and minifies all JS files (except jQuery...) into one single JS file called theme.min.js
- Updating Gulpfile - now "gulp copy-assets" command copies all files from dependency folders into mid-layer folder called "/src"
- Load jQuery again as extra script instead of concat it into on single file. After some problems with WooCommerce and other plugins
- Checking WordPress 4.5 compatibility
- Updating language template
- Adding Brazilian Portuguese (pt-BR) translation (thx to @dvlopes).
- ** 0.3.8 Mar. 9th 2016 **
- Adding footer widget area
- Adjust Bootstrap markup for searchform and search widget
- ** 0.3.7 Jan. 8th 2016**
- Cleanup for submitting to WordPress.org theme repository:
- Fixing sticky post problem
- Fixing skip-to-content link
- re-activating the admin bar
- adding readme.txt
- Fixing missing translation strings in comments template
- ** 0.3.6 Jan. 4th 2016**
- Cleanup
- Updating dependencies
- Upgrade to Bootstrap 3.3.6 and Font Awesome 4.5.0
- ** 0.3.4 SEP. 9th 2015**
- Adding basic WooCommerce support
- Cleanup for submitting to wordpress.org
- Removing _s SASS ... no need for basic styling. Thats Bootstrap´s job.
- ** 0.3.1 AUG. 12th 2015**
- Adding bower dependency manager and replacing GRUNT taskrunner with GULP
- ** 0.3.0 Mar. 23th 2015**
- Streamlining some code, adding extra "sticky" area (sticky posts above the main content area inside an extra loop). Fixing some child theme issues (now its really child theme ready...really...trust me...)
- ** 0.2.9 Mar. 10th 2015**
- Adding a new theme customizer option. It lets you add a code snippet right before the closing </body> tag.
For example for Google Analytics, Google Tag Mananger, Pingdom etc. Just copy and past your code to the input field and save the setting.
So you don´t have to edit the theme source file´s directly and your theme stay´s updateable
- ** 0.2.8 Feb. 6th 2015**
- Adding Grunt and Grunt SASS task
- ** 0.2.7 Jan. 26th 2015**
- Adding some basic theme option for the build-in slider script
- ** 0.2.6 Dec. 28th 2014**
- CLean up
- ** 0.2 Dec. 22th 2014**
- Adding Jasny Off-Canvas nav and Owl.Carousel Slider script
- Enqueue scipts and styled dynamically
- ** 0.1 Dec. 10th 2014 - First commit**

188
README.md
View File

@ -1,4 +1,12 @@
Start talking: [![Gitter](https://img.shields.io/gitter/room/holger1411/understrap.svg?maxAge=2592000?style=flat-square)](https://gitter.im/holger1411/understrap)
Travis build: [![Build Status](https://travis-ci.org/holger1411/understrap.svg?branch=master)](https://travis-ci.org/holger1411/understrap) | Start talking: [![Gitter](https://img.shields.io/gitter/room/holger1411/understrap.svg?maxAge=2592000?style=flat-square)](https://gitter.im/holger1411/understrap)
#### See: [Official Demo](https://understrap.com/understrap) | Read: [Official Docs Page](https://understrap.github.io/)
# UnderStrap WordPress Theme Framework
Website: [https://understrap.com](https://understrap.com)
Child Theme Project: [https://github.com/holger1411/understrap-child](https://github.com/holger1411/understrap-child)
## About
@ -6,141 +14,13 @@ Im a huge fan of Underscores, Bootstrap, and Sass. Why not combine these into
Thats what UnderStrap is.
You can use it as starter theme and build your own theme on top of it. Or you use it as parent theme and create your own child theme for UnderStrap.
At the moment, UnderStrap is in a very early stage. But if you want, feel free to use it for your own WordPress theme!
# UnderStrap WordPress Theme Framework
Website: [http://understrap.com](http://understrap.com)
Child Theme Project: [https://github.com/holger1411/understrap-child](https://github.com/holger1411/understrap-child)
## License
UnderStrap is released under the terms of the GPL version 2 or (at your option) any later version.
http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
## Changelog
- ** Pre Release 0.5.0 **
- Adding Greek language - Thx @stef-k
- Adding vertical-one-page template for landingpages - Thx @stef-k
- ** 0.4.9 Oct. 25th 2016 **
- Updating to Bootstrap 4 Alpha 5
- Using the correct BS4 markup for navbar - Thx @tedgeving
- Inject theme name and version into the footer dynamically - Thx @maxdmyers
- Adding a blank template for building up a landingpage via WP editor or als blank canvas for Visual Compoeser etc. - Thx @omarusman
- Fixing problem with empty folders after "gulp dist" - Thx @alwizo
- Fixed custom logo function typo - Thx @willgorham
- ** 0.4.8 Oct. 10th 2016 **
- Removing Bower and replace the dependency managment with npm
- Update to Bootstrap 4 Alpha 4
- Optimizing WooCommerce loop - Thx @typeplus
- Updating all dependencies
- Add WP Theme logo feature - Thx @jessijean
- ** 0.4.7 Aug. 15th 2016 **
- Fixing problem with tag page
- Fixing Navbar "hopping"
- Global bugfixing and streamlining performance issues
- ** 0.4.6 Aug. 1st 2016 **
- Update to Bootstrap 4 Alpha 3
- Adding basic padding to aligned content images
- Adding author.php template with author infos
- Correct language file + german translation
- ** 0.4.5 Jun. 20th 2016 **
- Adding right sanitizing function for customizer
- Fixing some escaping problems
- Removing "add script" customizer function
- Calling all sidebars with "get_sidebar"
- Load hero area on index.php conditionally
- Remove unused code, files and dependencies
- Adding credits for WP Bootstrap Navwalker by Edward McIntyre
- ** 0.4.4 Jun. 18th 2016 **
- Adding the new empty.php page template. Comes just with header, footer and a content area without markup. Good for build up landingpages. An empty canvas for your Bootstrap markup.
- Update bower.json dependencies to latest versions
- Update package.json dependencies to latest versions
- Adding Theter script as dependency for BS4 tooltip component
- Resorting gulpfile.js
- Removing BS3 completely as dependency
- Smaller bugfixes and code improvements
- ** 0.4.0 Apr. 29th 2016 **
- Switching from Bootstrap 3 to Bootstrap 4
- Adding BrowserSync to gulpfile (again thx to @dvlopes)
- Preparing the navbar markup so that the current version will work with Bootstrap 3 AND 4
- Adding "gulp scripts" command - This uglifies and minifies all JS files (except jQuery...) into one single JS file called theme.min.js
- Updating Gulpfile - now "gulp copy-assets" command copies all files from dependency folders into mid-layer folder called "/src"
- Load jQuery again as extra script instead of concat it into on single file. After some problems with WooCommerce and other plugins
- Checking WordPress 4.5 compatibility
- Updating language template
- Adding Brazilian Portuguese (pt-BR) translation (thx to @dvlopes).
- ** 0.3.8 Mar. 9th 2016 **
- Adding footer widget area
- Adjust Bootstrap markup for searchform and search widget
- ** 0.3.7 Jan. 8th 2016**
- Cleanup for submitting to WordPress.org theme repository:
- Fixing sticky post problem
- Fixing skip-to-content link
- re-activating the admin bar
- adding readme.txt
- Fixing missing translation strings in comments template
- ** 0.3.6 Jan. 4th 2016**
- Cleanup
- Updating dependencies
- Upgrade to Bootstrap 3.3.6 and Font Awesome 4.5.0
- ** 0.3.4 SEP. 9th 2015**
- Adding basic WooCommerce support
- Cleanup for submitting to wordpress.org
- Removing _s SASS ... no need for basic styling. Thats Bootstrap´s job.
- ** 0.3.1 AUG. 12th 2015**
- Adding bower dependency manager and replacing GRUNT taskrunner with GULP
- ** 0.3.0 Mar. 23th 2015**
- Streamlining some code, adding extra "sticky" area (sticky posts above the main content area inside an extra loop). Fixing some child theme issues (now its really child theme ready...really...trust me...)
- ** 0.2.9 Mar. 10th 2015**
- Adding a new theme customizer option. It lets you add a code snippet right before the closing </body> tag.
For example for Google Analytics, Google Tag Mananger, Pingdom etc. Just copy and past your code to the input field and save the setting.
So you don´t have to edit the theme source file´s directly and your theme stay´s updateable
- ** 0.2.8 Feb. 6th 2015**
- Adding Grunt and Grunt SASS task
- ** 0.2.7 Jan. 26th 2015**
- Adding some basic theme option for the build-in slider script
- ** 0.2.6 Dec. 28th 2014**
- CLean up
- ** 0.2 Dec. 22th 2014**
- Adding Jasny Off-Canvas nav and Owl.Carousel Slider script
- Enqueue scipts and styled dynamically
- ** 0.1 Dec. 10th 2014 - First commit**
See [changelog](CHANGELOG.md)
## Basic Features
@ -148,13 +28,12 @@ http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
- Combines Underscores PHP/JS files and Bootstraps HTML/CSS/JS.
- Comes with Bootstrap (v4) Sass source files and additional .scss files. Nicely sorted and ready to add your own variables and customize the Bootstrap variables.
- Uses a single and minified CSS file for all the basic stuff.
- [Font Awesome](http://fortawesome.github.io/Font-Awesome/) integration (v4.6.3)
- Comes with extra slider script by [Owl Carousel](http://www.owlcarousel.owlgraphic.com/) (v2.1.4)
- [Font Awesome](http://fortawesome.github.io/Font-Awesome/) integration (v4.7.0)
- Jetpack ready.
- WooCommerce support.
- Contact Form 7 support.
- [Child Theme](https://github.com/holger1411/understrap-child) ready.
- Translation ready.
- Multiple Page Templates
## Starter Theme + HTML Framework = WordPress Theme Framework
@ -165,7 +44,7 @@ Why not add a well known and supported layout framework to have a solid, clean a
Some basics about the Sass and CSS files that come with UnderStrap:
- The theme itself uses the `/style.css`file just to identify the theme inside of WordPress. The file is not loaded by the theme and does not include any styles.
- The `/css/theme.css` and it´s minified little brother `/css/theme.min.css` file(s) provides all styles. It is composed of five different SCSS sets and one variable file at `/sass/theme.scss`:
- The `/css/theme.css` and its minified little brother `/css/theme.min.css` file(s) provides all styles. It is composed of five different SCSS sets and one variable file at `/sass/theme.scss`:
- 1 "theme/theme_variables"; // <--------- Add your variables into this file. Also add variables to overwrite Bootstrap or UnderStrap variables here
- 2 "../src/bootstrap-sass/assets/stylesheets/bootstrap"; // <--------- All the Bootstrap stuff - Don´t edit this!
@ -180,19 +59,33 @@ Some basics about the Sass and CSS files that come with UnderStrap:
## Installation
- Download the understrap folder from GitHub or from understrap.com
### Classic install
- Download the understrap folder from GitHub or from [https://understrap.com](https://understrap.com)
- IMPORTANT: If you download it from GitHub make sure you rename the "understrap-master.zip" file just to "understrap.zip" or you might have problems using child themes !!
- Upload it into your WordPress installation subfolder here: `/wp-content/themes/`
- Login to your WordPress backend
- Go to Appearance → Themes
- Activate the UnderStrap theme
### npm install
- Open your terminal
- Change to the directory where you want to add UnderStrap
- Type `npm install understrap`
### WordPress.org install
- Open your WordPress backend
- Click on "Appearance -> Themes"
- Hit the "Add new" button
- Search for "UnderStrap"
- Hit the "install" button
- Activate the theme
## Developing With npm, Gulp and SASS and [Browser Sync][1]
### Installing Dependencies
- Make sure you have installed Node.js and Browser-Sync* (* optional, if you wanna use it) on your computer globally
- Then open your terminal and browse to the location of your UnderStrap copy
- Run: `$ npm install` and then: `$ gulp copy-assets`
- Run: `$ npm install`
### Running
To work and compile your Sass files on the fly start:
@ -217,6 +110,10 @@ The front-page slider is widget driven. Simply add more than one widget to widge
- Add two, or more, widgets of any kind to widget area “Hero”.
- Thats it.
## RTL styles?
Just add a new file to the themes root folder called rtl.css. Add all alignments to this file according to this description:
https://codex.wordpress.org/Right_to_Left_Language_Support
## Page Templates
### Blank Template
@ -231,27 +128,16 @@ The `empty.php` template displays a header and a footer only. A good starting po
The `fullwidthpage.php` template has full width layout without a sidebar.
### Vertical One Page Template
The `vertical-one-page.php` template displays all pages (except the one showing the posts) in a single vertical layout with a sliding navigation.
Additionally enables the user to control the order of each page by using the order page attribute field.
#### One Page Template How to
1. Assuming that you have the following pages: Home, About and Contact
2. Go to Appearance → Menus and add one **custom link** for each page
3. On the URL field type a hash `#` and the name of the page in **lower case** so for example the link for Home becomes `#home`
4. Edit the Home page and set as template the **Vertical One Page** (you only need to do this for the first page)
5. Set the order of each page using the **Order** field from **Page Attributes** so for example if you want to display Home,
Contact, About set the Home page to 1, the Contact to 2 and About to 3
[1] Visit [http://browsersync.io](http://browsersync.io) for more information on Browser Sync
Licenses & Credits
=
- Font Awesome: http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
- Bootstrap: http://getbootstrap.com | https://github.com/twbs/bootstrap/blob/master/LICENSE (Code licensed under MIT documentation under CC BY 3.0.)
- Owl Carousel 2: http://www.owlcarousel.owlgraphic.com/ | https://github.com/smashingboxes/OwlCarousel2/blob/develop/LICENSE (Code licensed under MIT)
and of course
- jQuery: https://jquery.org | (Code licensed under MIT)
- WP Bootstrap Navwalker by Edward McIntyre: https://github.com/twittem/wp-bootstrap-navwalker | GNU GPL
- Bootstrap Gallery Script based on Roots Sage Gallery: https://github.com/roots/sage/blob/5b9786b8ceecfe717db55666efe5bcf0c9e1801c/lib/gallery.php
[![Analytics](https://ga-beacon.appspot.com/UA-139292-31/chromeskel_a/readme)](https://github.com/igrigorik/ga-beacon)

View File

@ -7,58 +7,73 @@
* @package understrap
*/
get_header(); ?>
get_header();
?>
<?php
$container = get_theme_mod( 'understrap_container_type' );
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
<div class="wrapper" id="archive-wrapper">
<div id="content" class="container">
<div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area">
<main id="main" class="site-main" role="main">
<div class="<?php echo esc_html( $container ); ?>" id="content" tabindex="-1">
<?php if ( have_posts() ) : ?>
<div class="row">
<header class="page-header">
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
the_archive_description( '<div class="taxonomy-description">', '</div>' );
?>
</header><!-- .page-header -->
<!-- Do the left sidebar check -->
<?php get_template_part( 'global-templates/left-sidebar-check', 'none' ); ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<main class="site-main" id="main">
<?php
/* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'loop-templates/content', get_post_format() );
?>
<?php if ( have_posts() ) : ?>
<?php endwhile; ?>
<header class="page-header">
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
the_archive_description( '<div class="taxonomy-description">', '</div>' );
?>
</header><!-- .page-header -->
<?php the_posts_navigation(); ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php else : ?>
<?php
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
/*
* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'loop-templates/content', get_post_format() );
?>
<?php endif; ?>
<?php endwhile; ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php else : ?>
<?php get_sidebar(); ?>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php endif; ?>
</main><!-- #main -->
<!-- The pagination component -->
<?php understrap_pagination(); ?>
</div><!-- #primary -->
<!-- Do the right sidebar check -->
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'right' ); ?>
<?php endif; ?>
</div> <!-- .row -->
</div><!-- Container end -->
</div> <!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -6,80 +6,98 @@
*
* @package understrap
*/
get_header(); ?>
get_header();
$container = get_theme_mod( 'understrap_container_type' );
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
<div class="wrapper" id="author-wrapper">
<div id="content" class="container">
<div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area">
<main id="main" class="site-main" role="main">
<header class="page-header author-header">
<?php
$curauth = (isset($_GET['author_name'])) ? get_user_by('slug', $author_name) : get_userdata(intval($author));
?>
<div class="<?php echo esc_html( $container ); ?>" id="content" tabindex="-1">
<h1><?php esc_html_e( 'About:', 'understrap' ); ?> <?php echo $curauth->nickname; ?></h1>
<div class="row">
<?php if ( ! empty( $curauth->ID ) ) : ?>
<?php echo get_avatar($curauth->ID); ?>
<?php endif; ?>
<!-- Do the left sidebar check -->
<?php get_template_part( 'global-templates/left-sidebar-check', 'none' ); ?>
<dl>
<?php if ( ! empty( $curauth->user_url ) ) : ?>
<dt><?php esc_html_e( 'Website', 'understrap' ); ?></dt>
<dd><a href="<?php echo $curauth->user_url; ?>"><?php echo $curauth->user_url; ?></a></dd>
<?php endif; ?>
<main class="site-main" id="main">
<?php if ( ! empty( $curauth->user_description ) ) : ?>
<dt><?php esc_html_e( 'Profile', 'understrap' ); ?></dt>
<dd><?php echo $curauth->user_description; ?></dd>
<?php endif; ?>
</dl>
<h2><?php esc_html_e( 'Posts by', 'understrap' ); ?> <?php echo $curauth->nickname; ?>:</h2>
</header><!-- .page-header -->
<ul>
<!-- The Loop -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<li>
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>">
<?php the_title(); ?></a>,
<?php the_time('d M Y'); ?> in <?php the_category('&');?>
</li>
<?php endwhile; ?>
<header class="page-header author-header">
<?php the_posts_navigation(); ?>
<?php
$curauth = ( isset( $_GET['author_name'] ) ) ? get_user_by( 'slug',
$author_name ) : get_userdata( intval( $author ) );
?>
<?php else : ?>
<h1><?php esc_html_e( 'About:', 'understrap' ); ?><?php echo esc_html( $curauth->nickname ); ?></h1>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php if ( ! empty( $curauth->ID ) ) : ?>
<?php echo get_avatar( $curauth->ID ); ?>
<?php endif; ?>
<?php endif; ?>
<!-- End Loop -->
</ul>
<dl>
<?php if ( ! empty( $curauth->user_url ) ) : ?>
<dt><?php esc_html_e( 'Website', 'understrap' ); ?></dt>
<dd>
<a href="<?php echo esc_html( $curauth->user_url ); ?>"><?php echo esc_html( $curauth->user_url ); ?></a>
</dd>
<?php endif; ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php if ( ! empty( $curauth->user_description ) ) : ?>
<dt><?php esc_html_e( 'Profile', 'understrap' ); ?></dt>
<dd><?php echo esc_html( $curauth->user_description ); ?></dd>
<?php endif; ?>
</dl>
<?php get_sidebar(); ?>
<h2><?php esc_html_e( 'Posts by', 'understrap' ); ?> <?php echo esc_html( $curauth->nickname ); ?>
:</h2>
</header><!-- .page-header -->
<ul>
<!-- The Loop -->
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>
<li>
<a rel="bookmark" href="<?php the_permalink() ?>"
title="Permanent Link: <?php the_title(); ?>">
<?php the_title(); ?></a>,
<?php understrap_posted_on(); ?> <?php esc_html_e( 'in',
'understrap' ); ?> <?php the_category( '&' ); ?>
</li>
<?php endwhile; ?>
<?php else : ?>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php endif; ?>
<!-- End Loop -->
</ul>
</main><!-- #main -->
<!-- The pagination component -->
<?php understrap_pagination(); ?>
</div><!-- #primary -->
<!-- Do the right sidebar check -->
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'right' ); ?>
<?php endif; ?>
</div> <!-- .row -->
</div><!-- Container end -->
</div> <!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>
<?php get_footer(); ?>

View File

@ -1,6 +1,6 @@
{
"name": "understrap",
"version": "0.4.9",
"version": "0.6.0",
"homepage": "http://understrap.com",
"authors": [
"Holger Koenemann <office@holgerkoenemann.de>"
@ -26,6 +26,6 @@
"dependencies": {
},
"_source": "https://github.com/holger1411/understrap.git",
"_target": "~0.4.9",
"_target": "~0.6.0",
"_originalSource": "understrap"
}

19
codesniffer.ruleset.xml Normal file
View File

@ -0,0 +1,19 @@
<?xml version="1.0"?>
<ruleset name="WordPress Theme Coding Standards">
<!-- See https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml -->
<!-- See https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/blob/develop/WordPress-Core/ruleset.xml -->
<!-- Set a description for this ruleset. -->
<description>A custom set of code standard rules to check for WordPress themes.</description>
<!-- Include the WordPress ruleset, with exclusions. -->
<rule ref="WordPress">
<exclude name="Generic.WhiteSpace.ScopeIndent.IncorrectExact" />
<exclude name="Generic.WhiteSpace.ScopeIndent.Incorrect" />
<exclude name="PEAR.Functions.FunctionCallSignature.Indent" />
</rule>
<!-- Include sniffs for PHP cross-version compatibility. -->
<config name="testVersion" value="5.2-99.0"/>
<rule ref="PHPCompatibility"/>
</ruleset>

View File

@ -14,70 +14,89 @@
* return early without loading the comments.
*/
if ( post_password_required() ) {
return;
return;
}
?>
<div id="comments" class="comments-area">
<div class="comments-area" id="comments">
<?php // You can start editing here -- including this comment! ?>
<?php // You can start editing here -- including this comment! ?>
<?php if ( have_comments() ) : ?>
<h2 class="comments-title">
<?php
printf( _nx( 'One thought on &ldquo;%2$s&rdquo;', '%1$s thoughts on &ldquo;%2$s&rdquo;', get_comments_number(), 'comments title', 'understrap' ),
number_format_i18n( get_comments_number() ), '<span>' . get_the_title() . '</span>' );
?>
</h2>
<?php if ( have_comments() ) : ?>
<h2 class="comments-title">
<?php
$comments_number = get_comments_number();
if ( 1 === $comments_number ) {
printf(
/* translators: %s: post title */
esc_html_x( 'One thought on &ldquo;%s&rdquo;', 'comments title', 'understrap' ),
'<span>' . get_the_title() . '</span>'
);
} else {
printf( // WPCS: XSS OK.
/* translators: 1: number of comments, 2: post title */
esc_html( _nx(
'%1$s thought on &ldquo;%2$s&rdquo;',
'%1$s thoughts on &ldquo;%2$s&rdquo;',
$comments_number,
'comments title',
'understrap'
) ),
number_format_i18n( $comments_number ),
'<span>' . get_the_title() . '</span>'
);
}
?>
</h2><!-- .comments-title -->
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
<nav id="comment-nav-above" class="comment-navigation" role="navigation">
<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) ); ?></div>
<?php }
if ( get_next_comments_link() ) { ?>
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;', 'understrap' ) ); ?></div>
<?php } ?>
</nav><!-- #comment-nav-above -->
<?php endif; // check for comment navigation ?>
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through. ?>
<nav class="comment-navigation" id="comment-nav-above">
<h1 class="screen-reader-text"><?php esc_html_e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments',
'understrap' ) ); ?></div>
<?php }
if ( get_next_comments_link() ) { ?>
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;',
'understrap' ) ); ?></div>
<?php } ?>
</nav><!-- #comment-nav-above -->
<?php endif; // check for comment navigation. ?>
<ol class="comment-list">
<?php
wp_list_comments( array(
'style' => 'ol',
'short_ping' => true,
) );
?>
</ol><!-- .comment-list -->
<ol class="comment-list">
<?php
wp_list_comments( array(
'style' => 'ol',
'short_ping' => true,
) );
?>
</ol><!-- .comment-list -->
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
<nav id="comment-nav-below" class="comment-navigation" role="navigation">
<h1 class="screen-reader-text"><?php _e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments', 'understrap' ) ); ?></div>
<?php }
if ( get_next_comments_link() ) { ?>
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;', 'understrap' ) ); ?></div>
<?php } ?>
</nav><!-- #comment-nav-below -->
<?php endif; // check for comment navigation ?>
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through. ?>
<nav class="comment-navigation" id="comment-nav-below">
<h1 class="screen-reader-text"><?php esc_html_e( 'Comment navigation', 'understrap' ); ?></h1>
<?php if ( get_previous_comments_link() ) { ?>
<div class="nav-previous"><?php previous_comments_link( __( '&larr; Older Comments',
'understrap' ) ); ?></div>
<?php }
if ( get_next_comments_link() ) { ?>
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments &rarr;',
'understrap' ) ); ?></div>
<?php } ?>
</nav><!-- #comment-nav-below -->
<?php endif; // check for comment navigation. ?>
<?php endif; // have_comments() ?>
<?php endif; // endif have_comments(). ?>
<?php
// If comments are closed and there are comments, let's leave a little note, shall we?
if ( ! comments_open() && '0' != get_comments_number() && post_type_supports( get_post_type(), 'comments' ) ) :
?>
<p class="no-comments"><?php _e( 'Comments are closed.', 'understrap' ); ?></p>
<?php endif; ?>
<?php
// If comments are closed and there are comments, let's leave a little note, shall we?
if ( ! comments_open() && '0' != get_comments_number() && post_type_supports( get_post_type(), 'comments' ) ) :
?>
<?php
/* Loads the comment-form.php template
/* get_template_part('comment-form');
*/
?>
<p class="no-comments"><?php esc_html_e( 'Comments are closed.', 'understrap' ); ?></p>
<?php comment_form(); ?>
<?php endif; ?>
<?php comment_form(); // Render comments form. ?>
</div><!-- #comments -->

9233
css/custom-editor-style.css Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

11
css/theme.min.css vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 382 KiB

After

Width:  |  Height:  |  Size: 434 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -6,35 +6,46 @@
*
* @package understrap
*/
$the_theme = wp_get_theme();
$the_theme = wp_get_theme();
$container = get_theme_mod( 'understrap_container_type' );
?>
<?php get_sidebar('footerfull'); ?>
<?php get_sidebar( 'footerfull' ); ?>
<div class="wrapper" id="wrapper-footer">
<div class="container">
<div class="<?php echo esc_html( $container ); ?>">
<div class="row">
<div class="row">
<div class="col-md-12">
<div class="col-md-12">
<footer id="colophon" class="site-footer" role="contentinfo">
<footer class="site-footer" id="colophon">
<div class="site-info">
<a href="<?php echo esc_url( __( 'http://wordpress.org/', 'understrap' ) ); ?>"><?php printf( __( 'Proudly powered by %s', 'understrap' ), 'WordPress' ); ?></a>
<span class="sep"> | </span>
<?php printf( __( 'Theme: %1$s by %2$s.', 'understrap' ), $the_theme->get( 'Name' ), '<a href="http://understrap.com/" rel="designer">understrap.com</a>' ); ?>
(<?php printf( __( 'Version: %1$s', 'understrap' ), $the_theme->get( 'Version' ) ); ?>)
</div><!-- .site-info -->
<div class="site-info">
</footer><!-- #colophon -->
<a href="<?php echo esc_url( __( 'http://wordpress.org/','understrap' ) ); ?>"><?php printf(
/* translators:*/
esc_html__( 'Proudly powered by %s', 'understrap' ),'WordPress' ); ?></a>
<span class="sep"> | </span>
<?php printf( // WPCS: XSS ok.
/* translators:*/
esc_html__( 'Theme: %1$s by %2$s.', 'understrap' ), $the_theme->get( 'Name' ), '<a href="http://understrap.com/">understrap.com</a>' ); ?>
(<?php printf( // WPCS: XSS ok.
/* translators:*/
esc_html__( 'Version: %1$s', 'understrap' ), $the_theme->get( 'Version' ) ); ?>)
</div><!-- .site-info -->
</div><!--col end -->
</footer><!-- #colophon -->
</div><!-- row end -->
</div><!--col end -->
</div><!-- container end -->
</div><!-- row end -->
</div><!-- container end -->
</div><!-- wrapper end -->
@ -45,3 +56,4 @@
</body>
</html>

View File

@ -1,6 +1,6 @@
<?php
/**
* understrap functions and definitions
* Understrap functions and definitions
*
* @package understrap
*/
@ -18,8 +18,8 @@ require get_template_directory() . '/inc/setup.php';
require get_template_directory() . '/inc/widgets.php';
/**
* Load functions to secure your WP install.
*/
* Load functions to secure your WP install.
*/
require get_template_directory() . '/inc/security.php';
/**
@ -32,6 +32,11 @@ require get_template_directory() . '/inc/enqueue.php';
*/
require get_template_directory() . '/inc/template-tags.php';
/**
* Custom template tags for this theme.
*/
require get_template_directory() . '/inc/pagination.php';
/**
* Custom functions that act independently of the theme templates.
*/
@ -53,17 +58,16 @@ require get_template_directory() . '/inc/custom-comments.php';
require get_template_directory() . '/inc/jetpack.php';
/**
* Load custom WordPress nav walker.
*/
* Load custom WordPress nav walker.
*/
require get_template_directory() . '/inc/bootstrap-wp-navwalker.php';
/**
* Load custom WordPress gallery.
*/
require get_template_directory() . '/inc/bootstrap-wp-gallery.php';
* Load WooCommerce functions.
*/
require get_template_directory() . '/inc/woocommerce.php';
/**
* Load WooCommerce functions.
*/
require get_template_directory() . '/inc/woocommerce.php';
* Load Editor functions.
*/
require get_template_directory() . '/inc/editor.php';

20
global-templates/hero.php Normal file
View File

@ -0,0 +1,20 @@
<?php
/**
* Hero setup.
*
* @package understrap
*/
?>
<?php if ( is_active_sidebar( 'hero' ) || is_active_sidebar( 'statichero' ) ) : ?>
<div class="wrapper" id="wrapper-hero">
<?php get_sidebar( 'hero' ); ?>
<?php get_sidebar( 'statichero' ); ?>
</div>
<?php endif; ?>

View File

@ -0,0 +1,39 @@
<?php
/**
* Left sidebar check.
*
* @package understrap
*/
?>
<?php
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
<?php if ( 'left' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'left' ); ?>
<?php endif; ?>
<?php {
$html = '';
if ( 'right' === $sidebar_pos || 'left' === $sidebar_pos ) {
$html = '<div class="';
if ( is_active_sidebar( 'right-sidebar' ) || is_active_sidebar( 'left-sidebar' ) ) {
$html .= 'col-md-8 content-area" id="primary">';
} else {
$html .= 'col-md-12 content-area" id="primary">';
}
echo $html; // WPCS: XSS OK.
} elseif ( is_active_sidebar( 'right-sidebar' ) && is_active_sidebar( 'left-sidebar' ) ) {
$html = '<div class="';
if ( 'both' === $sidebar_pos ) {
$html .= 'col-md-6 content-area" id="primary">';
} else {
$html .= 'col-md-12 content-area" id="primary">';
}
echo $html; // WPCS: XSS OK.
} else {
echo '<div class="col-md-12 content-area" id="primary">';
}
}

View File

@ -0,0 +1,97 @@
<?php
/**
* Boostrap 4 pagination
*
* @package understrap
*/
/**
* Generates a pagination partial template for Bootstrap 4
* Mostly based on http://www.wpbeginner.com/wp-themes/how-to-add-numeric-pagination-in-your-wordpress-theme/
*/
function understrap_pagination() {
if ( is_singular() ) {
return;
}
global $wp_query;
/** Stop execution if there's only 1 page */
if ( $wp_query->max_num_pages <= 1 ) {
return;
}
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$max = intval( $wp_query->max_num_pages );
/** Add current page to the array */
if ( $paged >= 1 ) {
$links[] = $paged;
}
/** Add the pages around the current page to the array */
if ( $paged >= 3 ) {
$links[] = $paged - 1;
$links[] = $paged - 2;
}
if ( ( $paged + 2 ) <= $max ) {
$links[] = $paged + 2;
$links[] = $paged + 1;
}
echo '<nav aria-label="Page navigation"><ul class="pagination ">' . "\n";
/** Link to first page, plus ellipses if necessary */
if ( ! in_array( 1, $links ) ) {
$class = 1 == $paged ? ' class="active page-item"' : ' class="page-item"';
printf( // WPCS: XSS OK.
'<li %s><a class="page-link" href="%s"><i class="fa fa-step-backward" aria-hidden="true"></i></a></li>' . "\n",
$class,
esc_url( get_pagenum_link( 1 ) ), '1' );
/** Previous Post Link */
if ( get_previous_posts_link() ) {
printf( // WPCS: XSS OK.
'<li class="page-item"><span class="page-link">%1$s</span></li> ' . "\n",
get_previous_posts_link( // WPCS: XSS OK.
'<span aria-hidden="true">&laquo;</span><span class="sr-only">Previous page</span>' ) );
}
if ( ! in_array( 2, $links ) ) {
echo '<li class="page-item"></li>';
}
}
// Link to current page, plus 2 pages in either direction if necessary.
sort( $links );
foreach ( (array) $links as $link ) {
$class = $paged == $link ? ' class="active page-item"' : ' class="page-item"';
printf( // WPCS: XSS OK.
'<li %s><a href="%s" class="page-link">%s</a></li>' . "\n",
$class,
esc_url( get_pagenum_link( $link ) ), $link );
}
// Next Post Link.
if ( get_next_posts_link() ) {
printf( // WPCS: XSS OK.
'<li class="page-item"><span class="page-link">%s</span></li>' . "\n",
get_next_posts_link( '<span aria-hidden="true">&raquo;</span><span class="sr-only">Next page</span>' ) );
}
// Link to last page, plus ellipses if necessary.
if ( ! in_array( $max, $links ) ) {
if ( ! in_array( $max - 1, $links ) ) {
echo '<li class="page-item"></li>' . "\n";
}
$class = $paged == $max ? ' class="active "' : ' class="page-item"';
printf( // WPCS: XSS OK.
'<li %s><a class="page-link" href="%s" aria-label="Next"><span aria-hidden="true"><i class="fa fa-step-forward" aria-hidden="true"></i></span><span class="sr-only">%s</span></a></li>' . "\n",
$class . ' page-item 9', esc_url( get_pagenum_link( esc_html( $max ) ) ), esc_html( $max ) );
}
echo '</ul></nav>' . "\n";
}

View File

@ -5,6 +5,7 @@ var basePaths = {
dev: './src/'
};
// browser-sync watched files
// automatically reloads the page when files changed
var browserSyncWatchFiles = [
@ -12,13 +13,16 @@ var browserSyncWatchFiles = [
'./js/*.min.js',
'./**/*.php'
];
// browser-sync options
// see: https://www.browsersync.io/docs/options/
var browserSyncOptions = {
proxy: "localhost/theme_test/",
proxy: "localhost/wordpress/",
notify: false
};
// Defining requirements
var gulp = require('gulp');
var plumber = require('gulp-plumber');
@ -29,18 +33,20 @@ var rename = require('gulp-rename');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var merge2 = require('merge2');
var imagemin = require('gulp-imagemin');
var ignore = require('gulp-ignore');
var rimraf = require('gulp-rimraf');
var clone = require('gulp-clone');
var merge = require('gulp-merge');
var sourcemaps = require('gulp-sourcemaps');
var browserSync = require('browser-sync').create();
var reload = browserSync.reload;
var del = require('del');
var cleanCSS = require('gulp-clean-css');
// Run:
// Run:
// gulp sass + cssnano + rename
// Prepare the min.css for production (with 2 pipes to be sure that "child-theme.css" == "child-theme.min.css")
// Prepare the min.css for production (with 2 pipes to be sure that "theme.css" == "theme.min.css")
gulp.task('scss-for-prod', function() {
var source = gulp.src('./sass/*.scss')
.pipe(plumber())
@ -49,20 +55,22 @@ gulp.task('scss-for-prod', function() {
var pipe1 = source.pipe(clone())
.pipe(sourcemaps.write(undefined, { sourceRoot: null }))
.pipe(gulp.dest('./css'));
.pipe(gulp.dest('./css'))
.pipe(rename('custom-editor-style.css'))
var pipe2 = source.pipe(clone())
.pipe(cssnano())
.pipe(rename({suffix: '.min'}))
.pipe(minify-css())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('./css'));
return merge(pipe1, pipe2);
});
// Run:
// Run:
// gulp sourcemaps + sass + reload(browserSync)
// Prepare the child-theme.css for the developpment environment
// Prepare the child-theme.css for the development environment
gulp.task('scss-for-dev', function() {
gulp.src('./sass/*.scss')
.pipe(plumber())
@ -70,7 +78,6 @@ gulp.task('scss-for-dev', function() {
.pipe(sass())
.pipe(sourcemaps.write(undefined, { sourceRoot: null }))
.pipe(gulp.dest('./css'))
.pipe(reload({stream: true}));
});
gulp.task('watch-scss', ['browser-sync'], function () {
@ -78,105 +85,129 @@ gulp.task('watch-scss', ['browser-sync'], function () {
});
// Run:
// Run:
// gulp sass
// Compiles SCSS files in CSS
gulp.task('sass', function () {
gulp.src('./sass/*.scss')
var stream = gulp.src('./sass/*.scss')
.pipe(plumber())
.pipe(sass())
.pipe(gulp.dest('./css'));
.pipe(gulp.dest('./css'))
.pipe(rename('custom-editor-style.css'))
return stream;
});
// Run:
// Run:
// gulp watch
// Starts watcher. Watcher runs gulp sass task on changes
gulp.task('watch', function () {
gulp.watch('./sass/**/*.scss', ['sass']);
gulp.watch('./css/theme.css', ['cssnano']);
gulp.watch('./css/theme.css', ['minify-css']);
gulp.watch([basePaths.dev + 'js/**/*.js','js/**/*.js','!js/theme.js','!js/theme.min.js'], ['scripts']);
//Inside the watch task.
gulp.watch('./img/**', ['imagemin'])
});
// Run:
// gulp nanocss
// Run:
// gulp imagemin
// Running image optimizing task
gulp.task('imagemin', function(){
gulp.src('img/**')
.pipe(imagemin())
.pipe(gulp.dest('img'))
});
// Run:
// gulp cssnano
// Minifies CSS files
gulp.task('cssnano', ['cleancss'], function(){
return gulp.src('./css/*.css')
gulp.task('cssnano', function(){
return gulp.src('./css/theme.css')
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(plumber())
.pipe(rename({suffix: '.min'}))
.pipe(cssnano({discardComments: {removeAll: true}}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('./css/'))
.pipe(reload({stream: true}));
});
});
gulp.task('minify-css', function() {
return gulp.src('./css/theme.css')
.pipe(cleanCSS({compatibility: 'ie8'}))
.pipe(plumber())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('./css/'));
});
gulp.task('cleancss', function() {
return gulp.src('./css/*.min.css', { read: false }) // much faster
return gulp.src('./css/*.min.css', { read: false }) // much faster
.pipe(ignore('theme.css'))
.pipe(rimraf());
});
// Run:
// Run:
// gulp browser-sync
// Starts browser-sync task for starting the server.
gulp.task('browser-sync', function() {
browserSync.init(browserSyncWatchFiles, browserSyncOptions);
});
// Run:
// Run:
// gulp watch-bs
// Starts watcher with browser-sync. Browser-sync reloads page automatically on your browser
gulp.task('watch-bs', ['browser-sync', 'watch', 'cssnano'], function () { });
gulp.task('watch-bs', ['browser-sync', 'watch', 'minify-css', 'scripts'], function () { });
// Run:
// gulp scripts.
// Uglifies and concat all JS files into one
gulp.task('scripts', function() {
gulp.src([
basePaths.dev + 'js/owl.carousel.min.js', // Must be loaded before BS4
basePaths.dev + 'js/tether.js', // Must be loaded before BS4
var scripts = [
basePaths.dev + 'js/tether.js', // Must be loaded before BS4
// Start - All BS4 stuff
basePaths.dev + 'js/bootstrap4/bootstrap.js',
// Start - All BS4 stuff
basePaths.dev + 'js/bootstrap4/bootstrap.js',
// End - All BS4 stuff
// End - All BS4 stuff
basePaths.dev + 'js/skip-link-focus-fix.js'
])
basePaths.dev + 'js/skip-link-focus-fix.js'
];
gulp.src(scripts)
.pipe(concat('theme.min.js'))
.pipe(uglify())
.pipe(gulp.dest('./js/'));
gulp.src([
basePaths.dev + 'js/owl.carousel.min.js', // Must be loaded before BS4
basePaths.dev + 'js/tether.js', // Must be loaded before BS4
// Start - All BS4 stuff
basePaths.dev + 'js/bootstrap4/bootstrap.js',
// End - All BS4 stuff
basePaths.dev + 'js/skip-link-focus-fix.js'
])
gulp.src(scripts)
.pipe(concat('theme.js'))
.pipe(gulp.dest('./js/'));
});
// Run:
// gulp copy-assets.
// Deleting any file inside the /src folder
gulp.task('clean-source', function () {
return del(['src/**/*',]);
});
// Run:
// gulp copy-assets.
// Copy all needed dependency assets files from bower_component assets to themes /js, /scss and /fonts folder. Run this task after bower install or bower update
////////////////// All Bootstrap SASS Assets /////////////////////////
gulp.task('copy-assets', function() {
gulp.task('copy-assets', ['clean-source'], function() {
////////////////// All Bootstrap 4 Assets /////////////////////////
// Copy all Bootstrap JS files
gulp.src(basePaths.node + 'bootstrap/dist/js/**/*.js')
// Copy all Bootstrap JS files
var stream = gulp.src(basePaths.node + 'bootstrap/dist/js/**/*.js')
.pipe(gulp.dest(basePaths.dev + '/js/bootstrap4'));
// Copy all Bootstrap SCSS files
gulp.src(basePaths.node + 'bootstrap/scss/**/*.scss')
.pipe(gulp.dest(basePaths.dev + '/sass/bootstrap4'));
////////////////// End Bootstrap 4 Assets /////////////////////////
// Copy all Font Awesome Fonts
@ -187,24 +218,16 @@ gulp.task('copy-assets', function() {
gulp.src(basePaths.node + 'font-awesome/scss/*.scss')
.pipe(gulp.dest(basePaths.dev + '/sass/fontawesome'));
// owl JS files
gulp.src(basePaths.node + 'owl.carousel/dist/*.js')
.pipe(gulp.dest(basePaths.dev + '/js'));
// Copy all Owl2 SCSS files
gulp.src(basePaths.node + 'owl.carousel/src/scss/*.scss')
.pipe(gulp.dest(basePaths.dev + '/sass/owl-carousel2'));
// Copy all Owl2 CSS files
gulp.src(basePaths.node + 'owl.carousel/dist/assets/*.css')
.pipe(gulp.dest(basePaths.dev + '/css'));
// Copy jQuery
gulp.src(basePaths.node + 'jquery/dist/*.js')
.pipe(gulp.dest(basePaths.dev + '/js'));
// _s SCSS files
gulp.src(basePaths.node + 'undescores-for-npm/sass/**/*.scss')
.pipe(gulp.dest(basePaths.dev + '/sass/underscores'));
// _s JS files
gulp.src(basePaths.node + 'underscores-for-npm/js/*.js')
gulp.src(basePaths.node + 'undescores-for-npm/js/*.js')
.pipe(gulp.dest(basePaths.dev + '/js'));
// Copy Tether JS files
@ -214,12 +237,32 @@ gulp.task('copy-assets', function() {
// Copy Tether CSS files
gulp.src(basePaths.node + 'tether/dist/css/*.css')
.pipe(gulp.dest(basePaths.dev + '/css'));
return stream;
});
// Run
// gulp dist
// Copies the files to the /dist folder for distributon
gulp.task('dist', function() {
gulp.src(['**/*','!sass','!bower_components', '!node_modules','!src','!dist','!bower.json', '!gulpfile.js', '!package.json', '*'])
.pipe(gulp.dest('dist/'))
});
// Run
// gulp dist
// Copies the files to the /dist folder for distributon as simple theme
gulp.task('dist', ['clean-dist'], function() {
gulp.src(['**/*','!bower_components','!bower_components/**','!node_modules','!node_modules/**','!src','!src/**','!dist','!dist/**','!dist-product','!dist-product/**','!sass','!sass/**','!readme.txt','!readme.md','!package.json','!gulpfile.js','!CHANGELOG.md','!.travis.yml','!jshintignore', '!codesniffer.ruleset.xml', '*'])
.pipe(gulp.dest('dist/'))
});
// Deleting any file inside the /src folder
gulp.task('clean-dist', function () {
return del(['dist/**/*',]);
});
// Run
// gulp dist-product
// Copies the files to the /dist-prod folder for distributon as theme with all assets
gulp.task('dist-product', ['clean-dist-product'], function() {
gulp.src(['**/*','!bower_components','!bower_components/**','!node_modules','!node_modules/**','!dist','!dist/**','!dist-product','!dist-product/**', '*'])
.pipe(gulp.dest('dist-product/'))
});
// Deleting any file inside the /src folder
gulp.task('clean-dist-product', function () {
return del(['dist-product/**/*',]);
});

107
header.php Executable file → Normal file
View File

@ -6,72 +6,77 @@
*
* @package understrap
*/
?><!DOCTYPE html>
$container = get_theme_mod( 'understrap_container_type' );
?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-title" content="<?php bloginfo('name'); ?> - <?php bloginfo('description'); ?>">
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
<?php wp_head(); ?>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-title" content="<?php bloginfo( 'name' ); ?> - <?php bloginfo( 'description' ); ?>">
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<div id="page" class="hfeed site">
<!-- ******************* The Navbar Area ******************* -->
<div class="wrapper-fluid wrapper-navbar" id="wrapper-navbar">
<a class="skip-link screen-reader-text sr-only" href="#content"><?php _e( 'Skip to content', 'understrap' ); ?></a>
<div class="hfeed site" id="page">
<nav class="navbar navbar-dark bg-inverse site-navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
<!-- ******************* The Navbar Area ******************* -->
<div class="wrapper-fluid wrapper-navbar" id="wrapper-navbar">
<div class="container">
<a class="skip-link screen-reader-text sr-only" href="#content"><?php esc_html_e( 'Skip to content',
'understrap' ); ?></a>
<nav class="navbar navbar-toggleable-md navbar-inverse bg-inverse">
<div class="navbar-header">
<?php if ( 'container' == $container ) : ?>
<div class="container">
<?php endif; ?>
<!-- .navbar-toggle is used as the toggle for collapsed navbar content -->
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<button class="navbar-toggler hidden-sm-up" type="button" data-toggle="collapse" data-target=".exCollapsingNavbar" aria-controls="exCollapsingNavbar" aria-expanded="false" aria-label="Toggle navigation">
&#9776;
</button>
<!-- Your site title as branding in the menu -->
<?php if (!has_custom_logo()) { ?>
<a class="navbar-brand" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home">
<?php bloginfo( 'name' ); ?>
</a>
<?php } else { the_custom_logo(); } ?><!-- end custom logo -->
</div>
<!-- The WordPress Menu goes here -->
<?php wp_nav_menu(
array(
'theme_location' => 'primary',
'container_class' => 'collapse navbar-toggleable-xs exCollapsingNavbar',
'menu_class' => 'nav navbar-nav',
'fallback_cb' => '',
'menu_id' => 'main-menu',
'walker' => new wp_bootstrap_navwalker()
)
); ?>
</div> <!-- .container -->
</nav><!-- .site-navigation -->
</div><!-- .wrapper-navbar end -->
<!-- Your site title as branding in the menu -->
<?php if ( ! has_custom_logo() ) { ?>
<?php if ( is_front_page() && is_home() ) : ?>
<h1 class="navbar-brand mb-0"><a rel="home" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"><?php bloginfo( 'name' ); ?></a></h1>
<?php else : ?>
<a class="navbar-brand" rel="home" href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"><?php bloginfo( 'name' ); ?></a>
<?php endif; ?>
<?php } else {
the_custom_logo();
} ?><!-- end custom logo -->
<!-- The WordPress Menu goes here -->
<?php wp_nav_menu(
array(
'theme_location' => 'primary',
'container_class' => 'collapse navbar-collapse',
'container_id' => 'navbarNavDropdown',
'menu_class' => 'navbar-nav',
'fallback_cb' => '',
'menu_id' => 'main-menu',
'walker' => new WP_Bootstrap_Navwalker(),
)
); ?>
<?php if ( 'container' == $container ) : ?>
</div><!-- .container -->
<?php endif; ?>
</nav><!-- .site-navigation -->
</div><!-- .wrapper-navbar end -->

BIN
img/header.jpg Normal file

Binary file not shown.

View File

@ -1,129 +0,0 @@
<?php
//Based on Jeff Hays code and his article here: http://robido.com/wordpress/wordpress-gallery-filter-to-modify-the-html-output-of-the-default-gallery-shortcode-and-style/
// Custom filter function to modify default gallery shortcode output
function bootstrap_wp_gallery( $output, $attr ) {
// Initialize
global $post, $wp_locale;
// Gallery instance counter
static $instance = 0;
$instance++;
// Validate the author's orderby attribute
if ( isset( $attr['orderby'] ) ) {
$attr['orderby'] = sanitize_sql_orderby( $attr['orderby'] );
if ( ! $attr['orderby'] ) unset( $attr['orderby'] );
}
// Get attributes from shortcode
extract( shortcode_atts( array(
'order' => 'ASC',
'orderby' => 'menu_order ID',
'id' => $post->ID,
'itemtag' => 'div',
'icontag' => 'div',
'captiontag' => 'div',
'columns' => 3,
'size' => 'thumbnail',
'exclude' => ''
), $attr ) );
// Initialize
$id = intval( $id );
$attachments = array();
if ( $order == 'RAND' ) $orderby = 'none';
if ( ! empty( $include ) ) {
// Include attribute is present
$include = preg_replace( '/[^0-9,]+/', '', $include );
$_attachments = get_posts( array( 'include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
// Setup attachments array
foreach ( $_attachments as $key => $val ) {
$attachments[ $val->ID ] = $_attachments[ $key ];
}
} else if ( ! empty( $exclude ) ) {
// Exclude attribute is present
$exclude = preg_replace( '/[^0-9,]+/', '', $exclude );
// Setup attachments array
$attachments = get_children( array( 'post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
} else {
// Setup attachments array
$attachments = get_children( array( 'post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby ) );
}
if ( empty( $attachments ) ) return '';
// Filter gallery differently for feeds
if ( is_feed() ) {
$output = "\n";
foreach ( $attachments as $att_id => $attachment ) $output .= wp_get_attachment_link( $att_id, $size, true ) . "\n";
return $output;
}
// Filter tags and attributes
$itemtag = tag_escape( $itemtag );
$captiontag = tag_escape( $captiontag );
$columns = intval( $columns );
$itemwidth = $columns > 0 ? floor( 12 / $columns ) : 100;
$float = is_rtl() ? 'right' : 'left';
$selector = "gallery-{$instance}";
// Filter gallery CSS
$output = apply_filters( 'gallery_style', "
<div id='$selector' class='gallery galleryid-{$id} row'>"
);
// Iterate through the attachments in this gallery instance
$i = 0;
foreach ( $attachments as $id => $attachment ) {
// Attachment link
$link = isset( $attr['link'] ) && 'file' == $attr['link'] ? wp_get_attachment_link( $id, $size, false, false ) : wp_get_attachment_link( $id, $size, true, false );
// Start itemtag
$output .= "<{$itemtag} class='gallery-item col-md-{$itemwidth}'>";
// icontag
$output .= "
<{$icontag} class='gallery-icon'>
$link
</{$icontag}>";
if ( $captiontag && trim( $attachment->post_excerpt ) ) {
// captiontag
$output .= "
<{$captiontag} class='gallery-caption'>
" . wptexturize($attachment->post_excerpt) . "
</{$captiontag}>";
}
// End itemtag
$output .= "</{$itemtag}>";
// Line breaks by columns set
if($columns > 0 && ++$i % $columns == 0) $output .= '<br style="clear: both">';
}
// End gallery output
$output .= "
<br style='clear: both;'>
</div>\n";
return $output;
}
// Apply filter to default gallery shortcode
add_filter( 'post_gallery', 'bootstrap_wp_gallery', 10, 2 );

View File

@ -1,43 +1,53 @@
<?php
/**
*
* Adapted from Edward McIntyre's wp_bootstrap_navwalker class.
* Removed support for glyphicon and added support for Font Awesome
*
*/
* Adapted from Edward McIntyre's wp_bootstrap_navwalker class.
* Removed support for glyphicon and added support for Font Awesome.
*
* @package understrap
*/
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Class Name: wp_bootstrap_navwalker
* Class WP_Bootstrap_Navwalker
* GitHub URI: https://github.com/twittem/wp-bootstrap-navwalker
* Description: A custom WordPress nav walker class to implement the Bootstrap 3 navigation style in a custom theme using the WordPress built in menu manager.
* Description: A custom WordPress nav walker class to implement the Bootstrap 4
* navigation style in a custom theme using the WordPress built in menu manager.
* Version: 2.0.4
* Author: Edward McIntyre - @twittem
* License: GPL-2.0+
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
* @package understrap
*/
//exit if accessed directly
if(!defined('ABSPATH')) exit;
class wp_bootstrap_navwalker extends Walker_Nav_Menu {
class WP_Bootstrap_Navwalker extends Walker_Nav_Menu {
/**
* The starting level of the menu.
*
* @see Walker::start_lvl()
* @since 3.0.0
*
* @param string $output Passed by reference. Used to append additional content.
* @param int $depth Depth of page. Used for padding.
* @param int $depth Depth of page. Used for padding.
* @param mixed $args Rest of arguments.
*/
public function start_lvl( &$output, $depth = 0, $args = array() ) {
$indent = str_repeat( "\t", $depth );
$output .= "\n$indent<ul role=\"menu\" class=\" dropdown-menu\">\n";
$output .= "\n$indent<ul class=\" dropdown-menu\" role=\"menu\">\n";
}
/**
* Open element.
*
* @see Walker::start_el()
* @since 3.0.0
*
* @param string $output Passed by reference. Used to append additional content.
* @param object $item Menu item data object.
* @param int $depth Depth of menu item. Used for padding.
* @param int $current_page Menu item ID.
* @param object $args
* @param int $depth Depth of menu item. Used for padding.
* @param mixed $args Rest arguments.
* @param int $id Element's ID.
*/
public function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) {
$indent = ( $depth ) ? str_repeat( "\t", $depth ) : '';
@ -50,54 +60,59 @@ class wp_bootstrap_navwalker extends Walker_Nav_Menu {
* a 0 if the strings are equal.
*/
if ( strcasecmp( $item->attr_title, 'divider' ) == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="divider">';
} else if ( strcasecmp( $item->title, 'divider') == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="divider">';
} else if ( strcasecmp( $item->attr_title, 'dropdown-header') == 0 && $depth === 1 ) {
$output .= $indent . '<li role="presentation" class="dropdown-header">' . esc_attr( $item->title );
} else if ( strcasecmp($item->attr_title, 'disabled' ) == 0 ) {
$output .= $indent . '<li role="presentation" class="disabled"><a href="#">' . esc_attr( $item->title ) . '</a>';
$output .= $indent . '<li class="divider" role="presentation">';
} else if ( strcasecmp( $item->title, 'divider' ) == 0 && $depth === 1 ) {
$output .= $indent . '<li class="divider" role="presentation">';
} else if ( strcasecmp( $item->attr_title, 'dropdown-header' ) == 0 && $depth === 1 ) {
$output .= $indent . '<li class="dropdown-header" role="presentation">' . esc_attr( $item->title );
} else if ( strcasecmp( $item->attr_title, 'disabled' ) == 0 ) {
$output .= $indent . '<li class="disabled" role="presentation"><a href="#">' . esc_attr( $item->title ) . '</a>';
} else {
$class_names = $value = '';
$classes = empty( $item->classes ) ? array() : (array) $item->classes;
$classes[] = 'nav-item menu-item-' . $item->ID;
$classes = empty( $item->classes ) ? array() : (array) $item->classes;
$classes[] = 'nav-item menu-item-' . $item->ID;
$class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) );
/*
if ( $args->has_children )
$class_names .= ' dropdown';
$class_names .= ' dropdown';
*/
if($args->has_children && $depth === 0) { $class_names .= ' dropdown'; } elseif($args->has_children && $depth > 0) { $class_names .= ' dropdown-submenu'; }
if ( in_array( 'current-menu-item', $classes ) )
if ( $args->has_children && $depth === 0 ) {
$class_names .= ' dropdown';
} elseif ( $args->has_children && $depth > 0 ) {
$class_names .= ' dropdown-submenu';
}
if ( in_array( 'current-menu-item', $classes ) ) {
$class_names .= ' active';
}
// remove Font Awesome icon from classes array and save the icon
// we will add the icon back in via a <span> below so it aligns with
// the menu item
if ( in_array('fa', $classes)) {
$key = array_search('fa', $classes);
$icon = $classes[$key + 1];
$class_names = str_replace($classes[$key+1], '', $class_names);
$class_names = str_replace($classes[$key], '', $class_names);
if ( in_array( 'fa', $classes ) ) {
$key = array_search( 'fa', $classes );
$icon = $classes[ $key + 1 ];
$class_names = str_replace( $classes[ $key + 1 ], '', $class_names );
$class_names = str_replace( $classes[ $key ], '', $class_names );
}
$class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : '';
$id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args );
$id = $id ? ' id="' . esc_attr( $id ) . '"' : '';
$output .= $indent . '<li' . $id . $value . $class_names .'>';
$atts = array();
$atts['title'] = ! empty( $item->title ) ? $item->title : '';
$atts['target'] = ! empty( $item->target ) ? $item->target : '';
$atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
$id = apply_filters( 'nav_menu_item_id', 'menu-item-' . $item->ID, $item, $args );
$id = $id ? ' id="' . esc_attr( $id ) . '"' : '';
$output .= $indent . '<li' . $id . $value . $class_names . '>';
$atts = array();
$atts['title'] = ! empty( $item->title ) ? $item->title : '';
$atts['target'] = ! empty( $item->target ) ? $item->target : '';
$atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
// If item has_children add atts to a.
if ( $args->has_children && $depth === 0 ) {
$atts['href'] = '#';
$atts['data-toggle'] = 'dropdown';
$atts['class'] = 'nav-link dropdown-toggle';
$atts['href'] = '#';
$atts['data-toggle'] = 'dropdown';
$atts['class'] = 'nav-link dropdown-toggle';
} else {
$atts['href'] = ! empty( $item->url ) ? $item->url : '';
$atts['class'] = 'nav-link';
$atts['href'] = ! empty( $item->url ) ? $item->url : '';
$atts['class'] = 'nav-link';
}
$atts = apply_filters( 'nav_menu_link_attributes', $atts, $item, $args );
$atts = apply_filters( 'nav_menu_link_attributes', $atts, $item, $args );
$attributes = '';
foreach ( $atts as $attr => $value ) {
if ( ! empty( $value ) ) {
@ -107,16 +122,19 @@ class wp_bootstrap_navwalker extends Walker_Nav_Menu {
}
$item_output = $args->before;
// Font Awesome icons
if ( ! empty( $icon ) )
$item_output .= '<a'. $attributes .'><span class="fa ' . esc_attr( $icon ) . '"></span>&nbsp;';
else
$item_output .= '<a'. $attributes .'>';
$item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after;
if ( ! empty( $icon ) ) {
$item_output .= '<a' . $attributes . '><span class="fa ' . esc_attr( $icon ) . '"></span>&nbsp;';
} else {
$item_output .= '<a' . $attributes . '>';
}
$item_output .= $args->link_before . apply_filters( 'the_title', $item->title,
$item->ID ) . $args->link_after;
$item_output .= ( $args->has_children && 0 === $depth ) ? ' <span class="caret"></span></a>' : '</a>';
$item_output .= $args->after;
$output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args );
}
}
/**
* Traverse elements to create list from elements.
*
@ -130,22 +148,26 @@ class wp_bootstrap_navwalker extends Walker_Nav_Menu {
* @since 2.5.0
*
* @param object $element Data object
* @param array $children_elements List of elements to continue traversing.
* @param int $max_depth Max depth to traverse.
* @param int $depth Depth of current element.
* @param array $args
* @param array $children_elements List of elements to continue traversing.
* @param int $max_depth Max depth to traverse.
* @param int $depth Depth of current element.
* @param array $args
* @param string $output Passed by reference. Used to append additional content.
*
* @return null Null on failure with no changes to parameters.
*/
public function display_element( $element, &$children_elements, $max_depth, $depth, $args, &$output ) {
if ( ! $element )
return;
$id_field = $this->db_fields['id'];
// Display this element.
if ( is_object( $args[0] ) )
$args[0]->has_children = ! empty( $children_elements[ $element->$id_field ] );
parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output );
}
if ( ! $element ) {
return;
}
$id_field = $this->db_fields['id'];
// Display this element.
if ( is_object( $args[0] ) ) {
$args[0]->has_children = ! empty( $children_elements[ $element->$id_field ] );
}
parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output );
}
/**
* Menu Fallback
* =============
@ -163,24 +185,28 @@ class wp_bootstrap_navwalker extends Walker_Nav_Menu {
$fb_output = null;
if ( $container ) {
$fb_output = '<' . $container;
if ( $container_id )
$fb_output .= ' id="' . $container_id . '"';
if ( $container_class )
if ( $container_class ) {
$fb_output .= ' class="' . $container_class . '"';
}
if ( $container_id ) {
$fb_output .= ' id="' . $container_id . '"';
}
$fb_output .= '>';
}
$fb_output .= '<ul';
if ( $menu_id )
$fb_output .= ' id="' . $menu_id . '"';
if ( $menu_class )
if ( $menu_class ) {
$fb_output .= ' class="' . $menu_class . '"';
}
if ( $menu_id ) {
$fb_output .= ' id="' . $menu_id . '"';
}
$fb_output .= '>';
$fb_output .= '<li><a href="' . admin_url( 'nav-menus.php' ) . '">Add a menu</a></li>';
$fb_output .= '</ul>';
if ( $container )
if ( $container ) {
$fb_output .= '</' . $container . '>';
}
echo $fb_output;
}
}
}

View File

@ -1,30 +1,54 @@
<?php
/************* COMMENT LAYOUT *********************/
// Comment Form
/**
* Comment layout.
*
* @package understrap
*/
add_filter( 'comment_form_default_fields', 'bootstrap3_comment_form_fields' );
function bootstrap3_comment_form_fields( $fields ) {
$commenter = wp_get_current_commenter();
$req = get_option( 'require_name_email' );
$aria_req = ( $req ? " aria-required='true'" : '' );
$html5 = current_theme_supports( 'html5', 'comment-form' ) ? 1 : 0;
$fields = array(
'author' => '<div class="form-group comment-form-author">' . '<label for="author">' . __( 'Name', 'understrap' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input class="form-control" id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></div>',
'email' => '<div class="form-group comment-form-email"><label for="email">' . __( 'Email', 'understrap' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input class="form-control" id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></div>',
'url' => '<div class="form-group comment-form-url"><label for="url">' . __( 'Website', 'understrap' ) . '</label> ' .
'<input class="form-control" id="url" name="url" ' . ( $html5 ? 'type="url"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></div>',
);
return $fields;
}
// Comments form.
add_filter( 'comment_form_default_fields', 'bootstrap3_comment_form_fields' );
add_filter( 'comment_form_defaults', 'bootstrap3_comment_form' );
function bootstrap3_comment_form( $args ) {
$args['comment_field'] = '<div class="form-group comment-form-comment">
/**
* Creates the comments form.
*
* @param string $fields Form fields.
*
* @return array
*/
function bootstrap3_comment_form_fields( $fields ) {
$commenter = wp_get_current_commenter();
$req = get_option( 'require_name_email' );
$aria_req = ( $req ? " aria-required='true'" : '' );
$html5 = current_theme_supports( 'html5', 'comment-form' ) ? 1 : 0;
$fields = array(
'author' => '<div class="form-group comment-form-author" <label for="author">' . __( 'Name',
'understrap' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input class="form-control" id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . '></div>',
'email' => '<div class="form-group comment-form-email"><label for="email">' . __( 'Email',
'understrap' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input class="form-control" id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . '></div>',
'url' => '<div class="form-group comment-form-url"><label for="url">' . __( 'Website',
'understrap' ) . '</label> ' .
'<input class="form-control" id="url" name="url" ' . ( $html5 ? 'type="url"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30"></div>',
);
return $fields;
}
add_filter( 'comment_form_defaults', 'bootstrap3_comment_form' );
/**
* Builds the form.
*
* @param string $args Arguments for form's fields.
*
* @return mixed
*/
function bootstrap3_comment_form( $args ) {
$args['comment_field'] = '<div class="form-group comment-form-comment">
<label for="comment">' . _x( 'Comment', 'noun', 'understrap' ) . ( ' <span class="required">*</span>' ) . '</label>
<textarea class="form-control" id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea>
<textarea class="form-control" id="comment" name="comment" aria-required="true" cols="45" rows="8"></textarea>
</div>';
$args['class_submit'] = 'btn btn-secondary'; // since WP 4.1
return $args;
}
$args['class_submit'] = 'btn btn-secondary'; // since WP 4.1.
return $args;
}

42
inc/custom-header.php Normal file
View File

@ -0,0 +1,42 @@
<?php
/**
* Custom header setup.
*
* @package understrap
*/
function understrap_custom_header_setup() {
/**
* Filter UnderStrap custom-header support arguments.
*
* @since UnderStrap 0.5.2
*
* @param array $args {
* An array of custom-header support arguments.
*
* @type string $default-image Default image of the header.
* @type string $default_text_color Default color of the header text.
* @type int $width Width in pixels of the custom header image. Default 954.
* @type int $height Height in pixels of the custom header image. Default 1300.
* @type string $wp-head-callback Callback function used to styles the header image and text
* displayed on the blog.
* @type string $flex-height Flex support for height of header.
* }
*/
add_theme_support( 'custom-header', apply_filters( 'understrap_custom_header_args', array(
'default-image' => get_parent_theme_file_uri( '/img/header.jpg' ),
'width' => 2000,
'height' => 1200,
'flex-height' => true,
) ) );
register_default_headers( array(
'default-image' => array(
'url' => '%s/img/header.jpg',
'thumbnail_url' => '%s/img/header.jpg',
'description' => __( 'Default Header Image', 'understrap' ),
),
) );
}
add_action( 'after_setup_theme', 'understrap_custom_header_setup' );

View File

@ -1,6 +1,6 @@
<?php
/**
* understrap Theme Customizer
* Understrap Theme Customizer
*
* @package understrap
*/
@ -10,69 +10,100 @@
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
function understrap_customize_register( $wp_customize ) {
$wp_customize->get_setting( 'blogname' )->transport = 'postMessage';
$wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage';
$wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage';
if ( ! function_exists( 'understrap_customize_register' ) ) {
/**
* Register basic customizer support.
*
* @param object $wp_customize Customizer reference.
*/
function understrap_customize_register( $wp_customize ) {
$wp_customize->get_setting( 'blogname' )->transport = 'postMessage';
$wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage';
$wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage';
}
}
add_action( 'customize_register', 'understrap_customize_register' );
function understrap_theme_customize_register( $wp_customize ) {
if ( ! function_exists( 'understrap_theme_customize_register' ) ) {
/**
* Register individual settings through customizer's API.
*
* @param WP_Customize_Manager $wp_customize Customizer reference.
*/
function understrap_theme_customize_register( $wp_customize ) {
$wp_customize->add_section( 'understrap_theme_slider_options', array(
'title' => __( 'Slider Settings', 'understrap' )
) );
// Theme layout settings.
$wp_customize->add_section( 'understrap_theme_layout_options', array(
'title' => __( 'Theme Layout Settings', 'understrap' ),
'capability' => 'edit_theme_options',
'description' => __( 'Container width and sidebar defaults', 'understrap' ),
'priority' => 160,
) );
$wp_customize->add_setting( 'understrap_theme_slider_count_setting', array(
'default' => '1',
'sanitize_callback' => 'absint'
) );
$wp_customize->add_setting( 'understrap_container_type', array(
'default' => 'container',
'type' => 'theme_mod',
'sanitize_callback' => 'esc_textarea',
'capability' => 'edit_theme_options',
) );
$wp_customize->add_control( 'understrap_theme_slider_count', array(
'label' => __( 'Number of slides displaying at once', 'understrap' ),
'section' => 'understrap_theme_slider_options',
'type' => 'text',
'settings' => 'understrap_theme_slider_count_setting'
) );
$wp_customize->add_control(
new WP_Customize_Control(
$wp_customize,
'container_type', array(
'label' => __( 'Container Width', 'understrap' ),
'description' => __( "Choose between Bootstrap's container and container-fluid", 'understrap' ),
'section' => 'understrap_theme_layout_options',
'settings' => 'understrap_container_type',
'type' => 'select',
'choices' => array(
'container' => __( 'Fixed width container', 'understrap' ),
'container-fluid' => __( 'Full width container', 'understrap' ),
),
'priority' => '10',
)
) );
$wp_customize->add_setting( 'understrap_theme_slider_time_setting', array(
'default' => '5000',
'sanitize_callback' => 'absint'
) );
$wp_customize->add_setting( 'understrap_sidebar_position', array(
'default' => 'right',
'type' => 'theme_mod',
'sanitize_callback' => 'esc_textarea',
'capability' => 'edit_theme_options',
) );
$wp_customize->add_control( 'understrap_theme_slider_time', array(
'label' => __( 'Slider Time (in ms)', 'understrap' ),
'section' => 'understrap_theme_slider_options',
'type' => 'text',
'settings' => 'understrap_theme_slider_time_setting'
) );
$wp_customize->add_setting( 'understrap_theme_slider_loop_setting', array(
'default' => 'true',
'sanitize_callback' => 'esc_textarea'
) );
$wp_customize->add_control( 'understrap_theme_loop', array(
'label' => __( 'Loop Slider Content', 'understrap' ),
'section' => 'understrap_theme_slider_options',
'type' => 'radio',
'choices' => array(
'true' => 'yes',
'false' => 'no',
),
'settings' => 'understrap_theme_slider_loop_setting'
) );
}
$wp_customize->add_control(
new WP_Customize_Control(
$wp_customize,
'understrap_sidebar_position', array(
'label' => __( 'Sidebar Positioning', 'understrap' ),
'description' => __( "Set sidebar's default position. Can either be: right, left, both or none. Note: this can be overridden on individual pages.",
'understrap' ),
'section' => 'understrap_theme_layout_options',
'settings' => 'understrap_sidebar_position',
'type' => 'select',
'choices' => array(
'right' => __( 'Right sidebar', 'understrap' ),
'left' => __( 'Left sidebar', 'understrap' ),
'both' => __( 'Left & Right sidebars', 'understrap' ),
'none' => __( 'No sidebar', 'understrap' ),
),
'priority' => '20',
)
) );
}
} // endif function_exists( 'understrap_theme_customize_register' ).
add_action( 'customize_register', 'understrap_theme_customize_register' );
/**
* Binds JS handlers to make Theme Customizer preview reload changes asynchronously.
*/
function understrap_customize_preview_js() {
wp_enqueue_script( 'understrap_customizer', get_template_directory_uri() . '/js/customizer.js', array( 'customize-preview' ), '20130508', true );
if ( ! function_exists( 'understrap_customize_preview_js' ) ) {
/**
* Setup JS integration for live previewing.
*/
function understrap_customize_preview_js() {
wp_enqueue_script( 'understrap_customizer', get_template_directory_uri() . '/js/customizer.js',
array( 'customize-preview' ), '20130508', true );
}
}
add_action( 'customize_preview_init', 'understrap_customize_preview_js' );

65
inc/editor.php Normal file
View File

@ -0,0 +1,65 @@
<?php
/**
* Understrap modify editor
*
* @package understrap
*/
/**
* Registers an editor stylesheet for the theme.
*/
function wpdocs_theme_add_editor_styles() {
add_editor_style( 'css/custom-editor-style.css' );
}
add_action( 'admin_init', 'wpdocs_theme_add_editor_styles' );
// Add TinyMCE style formats.
add_filter( 'mce_buttons_2', 'understrap_tiny_mce_style_formats' );
function understrap_tiny_mce_style_formats( $styles ) {
array_unshift( $styles, 'styleselect' );
return $styles;
}
add_filter( 'tiny_mce_before_init', 'understrap_tiny_mce_before_init' );
function understrap_tiny_mce_before_init( $settings ) {
$style_formats = array(
array(
'title' => 'Lead Paragraph',
'selector' => 'p',
'classes' => 'lead',
'wrapper' => true
),
array(
'title' => 'Small',
'inline' => 'small'
),
array(
'title' => 'Blockquote',
'block' => 'blockquote',
'classes' => 'blockquote',
'wrapper' => true
),
array(
'title' => 'Blockquote Footer',
'block' => 'footer',
'classes' => 'blockquote-footer',
'wrapper' => true
),
array(
'title' => 'Cite',
'inline' => 'cite'
)
);
if ( isset( $settings['style_formats'] ) ) {
$orig_style_formats = json_decode($settings['style_formats'],true);
$style_formats = array_merge($orig_style_formats,$style_formats);
}
$settings['style_formats'] = json_encode( $style_formats );
return $settings;
}

View File

@ -1,54 +1,24 @@
<?php
/**
* understrap enqueue scripts
* Understrap enqueue scripts
*
* @package understrap
*/
function understrap_scripts() {
wp_enqueue_style( 'understrap-styles', get_stylesheet_directory_uri() . '/css/theme.min.css', array(), '0.4.9' );
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . '/js/theme.min.js', array(), '0.4.9', true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
// menu - vertical page association
if ( is_page_template( 'page-templates/vertical-one-page.php' ) || is_home() || is_single() ) {
wp_enqueue_script( 'vertical-one-page', get_template_directory_uri() . '/js/vertical-one-page.js', array( 'jquery' ), '0.4.9', true );
$page_for_posts = strtolower( get_the_title( get_option( 'page_for_posts' ) ) );
$home_url = home_url();
$is_single = is_single();
$vars = array(
'pageForPosts' => $page_for_posts,
'homeUrl' => $home_url,
'isSingle' => $is_single
);
wp_localize_script( 'vertical-one-page', 'vars', $vars );
}
// menu - vertical page association end
}
add_action( 'wp_enqueue_scripts', 'understrap_scripts' );
/**
*Loading slider script conditionally
**/
if ( is_active_sidebar( 'hero' ) ):
add_action( "wp_enqueue_scripts", "understrap_slider" );
function understrap_slider() {
if ( is_front_page() ) {
$data = array(
"timeout" => intval( get_theme_mod( 'understrap_theme_slider_time_setting', 5000 ) ),
"items" => intval( get_theme_mod( 'understrap_theme_slider_count_setting', 1 ) )
);
wp_enqueue_script( "understrap-slider-script", get_stylesheet_directory_uri() . '/js/slider_settings.js', array(), '0.4.9' );
wp_localize_script( "understrap-slider-script", "understrap_slider_variables", $data );
if ( ! function_exists( 'understrap_scripts' ) ) {
/**
* Load theme's JavaScript sources.
*/
function understrap_scripts() {
// Get the theme data.
$the_theme = wp_get_theme();
wp_enqueue_style( 'understrap-styles', get_stylesheet_directory_uri() . '/css/theme.min.css', array(), $the_theme->get( 'Version' ) );
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . '/js/theme.min.js', array(), $the_theme->get( 'Version' ), true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
endif;
} // endif function_exists( 'understrap_scripts' ).
add_action( 'wp_enqueue_scripts', 'understrap_scripts' );

View File

@ -6,43 +6,108 @@
*
* @package understrap
*/
/**
* Adds custom classes to the array of body classes.
*
* @param array $classes Classes for the body element.
* @return array
*/
function understrap_body_classes( $classes ) {
// Adds a class of group-blog to blogs with more than 1 published author.
if ( is_multi_author() ) {
$classes[] = 'group-blog';
if ( ! function_exists( 'understrap_body_classes' ) ) {
/**
* Adds custom classes to the array of body classes.
*
* @param array $classes Classes for the body element.
*
* @return array
*/
function understrap_body_classes( $classes ) {
// Adds a class of group-blog to blogs with more than 1 published author.
if ( is_multi_author() ) {
$classes[] = 'group-blog';
}
// Adds a class of hfeed to non-singular pages.
if ( ! is_singular() ) {
$classes[] = 'hfeed';
}
return $classes;
}
// Adds a class of hfeed to non-singular pages.
if ( ! is_singular() ) {
$classes[] = 'hfeed';
}
return $classes;
}
add_filter( 'body_class', 'understrap_body_classes' );
// Removes tag class from the body_class array to avoid Bootstrap markup styling issues.
add_filter( 'body_class', 'adjust_body_class' );
function adjust_body_class( $classes ) {
foreach ( $classes as $key => $value ) {
if ( $value == 'tag' ) unset( $classes[ $key ] );
}
if ( ! function_exists( 'adjust_body_class' ) ) {
/**
* Setup body classes.
*
* @param string $classes CSS classes.
*
* @return mixed
*/
function adjust_body_class( $classes ) {
return $classes;
foreach ( $classes as $key => $value ) {
if ( 'tag' == $value ) {
unset( $classes[ $key ] );
}
}
return $classes;
}
}
// Filter custom logo with correct classes
add_filter('get_custom_logo','change_logo_class');
function change_logo_class($html)
{
$html = str_replace('class="custom-logo"', 'class="img-responsive"', $html);
$html = str_replace('class="custom-logo-link"', 'class="navbar-brand custom-logo-link"', $html);
return $html;
// Filter custom logo with correct classes.
add_filter( 'get_custom_logo', 'change_logo_class' );
if ( ! function_exists( 'change_logo_class' ) ) {
/**
* Replaces logo CSS class.
*
* @param string $html Markup.
*
* @return mixed
*/
function change_logo_class( $html ) {
$html = str_replace( 'class="custom-logo"', 'class="img-responsive"', $html );
$html = str_replace( 'class="custom-logo-link"', 'class="navbar-brand custom-logo-link"', $html );
$html = str_replace( 'alt=""', 'title="Home" alt="logo"' , $html );
return $html;
}
}
/**
* Display navigation to next/previous post when applicable.
*/
if ( ! function_exists( 'understrap_post_nav' ) ) :
function understrap_post_nav() {
// Don't print empty markup if there's nowhere to navigate.
$previous = ( is_attachment() ) ? get_post( get_post()->post_parent ) : get_adjacent_post( false, '', true );
$next = get_adjacent_post( false, '', false );
if ( ! $next && ! $previous ) {
return;
}
?>
<div class="row">
<div class="col-md-12">
<nav class="navigation post-navigation">
<h2 class="sr-only"><?php _e( 'Post navigation', 'understrap' ); ?></h2>
<div class="nav-links">
<?php
if ( get_previous_post_link() ) {
previous_post_link( '<span class="nav-previous float-xs-left">%link</span>', _x( '<i class="fa fa-angle-left"></i>&nbsp;%title', 'Previous post link', 'understrap' ) );
}
if ( get_next_post_link() ) {
next_post_link( '<span class="nav-next float-xs-right">%link</span>', _x( '%title&nbsp;<i class="fa fa-angle-right"></i>', 'Next post link', 'understrap' ) );
}
?>
</div><!-- .nav-links -->
</nav><!-- .navigation -->
</div>
</div>
<?php
}
endif;

View File

@ -1,39 +1,53 @@
<?php
/**
* Jetpack Compatibility File.
* Jetpack Compatibility File
*
* @link https://jetpack.com/
* @link https://jetpack.me/
*
* @package understrap
* @package UnderStrap
*/
/**
* Jetpack setup function.
*
* See: https://jetpack.com/support/infinite-scroll/
* See: https://jetpack.com/support/responsive-videos/
* See: https://jetpack.me/support/infinite-scroll/
* See: https://jetpack.me/support/responsive-videos/
*/
function understrap_jetpack_setup() {
function components_jetpack_setup() {
// Add theme support for Infinite Scroll.
add_theme_support( 'infinite-scroll', array(
'container' => 'main',
'render' => 'understrap_infinite_scroll_render',
'footer' => 'wrapper-footer',
'render' => 'components_infinite_scroll_render',
'footer' => 'page',
) );
// Add theme support for Responsive Videos.
add_theme_support( 'jetpack-responsive-videos' );
// Add theme support for Social Menus
add_theme_support( 'jetpack-social-menu' );
}
add_action( 'after_setup_theme', 'understrap_jetpack_setup' );
add_action( 'after_setup_theme', 'components_jetpack_setup' );
/**
* Custom render function for Infinite Scroll.
*/
function understrap_infinite_scroll_render() {
function components_infinite_scroll_render() {
while ( have_posts() ) {
the_post();
if ( is_search() ) :
get_template_part( 'loop-templates/content', 'search' );
get_template_part( 'components/post/content', 'search' );
else :
get_template_part( 'loop-templates/content', get_post_format() );
get_template_part( 'components/post/content', get_post_format() );
endif;
}
}
function components_social_menu() {
if ( ! function_exists( 'jetpack_social_menu' ) ) {
return;
} else {
jetpack_social_menu();
}
}

93
inc/pagination.php Normal file
View File

@ -0,0 +1,93 @@
<?php
/**
* Pagination layout.
*
* @package understrap
*/
/**
* Custom Pagination with numbers
* Credits to http://www.wpbeginner.com/wp-themes/how-to-add-numeric-pagination-in-your-wordpress-theme/
*/
if ( ! function_exists( 'understrap_pagination' ) ) :
function understrap_pagination() {
if ( is_singular() ) {
return;
}
global $wp_query;
/** Stop execution if there's only 1 page */
if ( $wp_query->max_num_pages <= 1 ) {
return;
}
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$max = intval( $wp_query->max_num_pages );
/** Add current page to the array */
if ( $paged >= 1 ) {
$links[] = $paged;
}
/** Add the pages around the current page to the array */
if ( $paged >= 3 ) {
$links[] = $paged - 1;
$links[] = $paged - 2;
}
if ( ( $paged + 2 ) <= $max ) {
$links[] = $paged + 2;
$links[] = $paged + 1;
}
echo '<nav aria-label="Page navigation"><ul class="pagination ">' . "\n";
/** Link to first page, plus ellipses if necessary */
if ( ! in_array( 1, $links ) ) {
$class = 1 == $paged ? ' class="active page-item"' : ' class="page-item"';
printf( '<li %s><a class="page-link" href="%s"><i class="fa fa-step-backward" aria-hidden="true"></i></a></li>' . "\n",
$class, esc_url( get_pagenum_link( 1 ) ), '1' );
/** Previous Post Link */
if ( get_previous_posts_link() ) {
printf( '<li class="page-item"><span class="page-link">%1$s</span></li> ' . "\n",
get_previous_posts_link( '<span aria-hidden="true">&laquo;</span><span class="sr-only">Previous page</span>' ) );
}
if ( ! in_array( 2, $links ) ) {
echo '<li class="page-item"></li>';
}
}
// Link to current page, plus 2 pages in either direction if necessary.
sort( $links );
foreach ( (array) $links as $link ) {
$class = $paged == $link ? ' class="active page-item"' : ' class="page-item"';
printf( '<li %s><a href="%s" class="page-link">%s</a></li>' . "\n", $class,
esc_url( get_pagenum_link( $link ) ), $link );
}
// Next Post Link.
if ( get_next_posts_link() ) {
printf( '<li class="page-item"><span class="page-link">%s</span></li>' . "\n",
get_next_posts_link( '<span aria-hidden="true">&raquo;</span><span class="sr-only">Next page</span>' ) );
}
// Link to last page, plus ellipses if necessary.
if ( ! in_array( $max, $links ) ) {
if ( ! in_array( $max - 1, $links ) ) {
echo '<li class="page-item"></li>' . "\n";
}
$class = $paged == $max ? ' class="active "' : ' class="page-item"';
printf( '<li %s><a class="page-link" href="%s" aria-label="Next"><span aria-hidden="true"><i class="fa fa-step-forward" aria-hidden="true"></i></span><span class="sr-only">%s</span></a></li>' . "\n",
$class . '', esc_url( get_pagenum_link( esc_html( $max ) ) ), esc_html( $max ) );
}
echo '</ul></nav>' . "\n";
}
endif;

View File

@ -1,29 +1,41 @@
<?php
/* Inspired by Simon Bradburys cleanup.php fromb4st theme https://github.com/SimonPadbury/b4st */
/*
Removes the generator tag with WP version numbers. Hackers will use this to find weak and old WP installs
*/
function no_generator() {
return '';
/**
* Inspired by Simon Bradburys cleanup.php fromb4st theme https://github.com/SimonPadbury/b4st
*
* @package understrap
*/
/**
* Removes the generator tag with WP version numbers. Hackers will use this to find weak and old WP installs
*
* @return string
*/
function no_generator() {
return '';
}
add_filter( 'the_generator', 'no_generator' );
/*
Clean up wp_head() from unused or unsecure stuff
*/
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);
remove_action('wp_head', 'wp_shortlink_wp_head', 10, 0);
/*
Show less info to users on failed login for security.
(Will not let a valid username be known.)
*/
function show_less_login_info() {
return "<strong>ERROR</strong>: Stop guessing!";
remove_action( 'wp_head', 'wp_generator' );
remove_action( 'wp_head', 'rsd_link' );
remove_action( 'wp_head', 'wlwmanifest_link' );
remove_action( 'wp_head', 'index_rel_link' );
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 );
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
/**
* Show less info to users on failed login for security.
* (Will not let a valid username be known.)
*
* @return string
*/
function show_less_login_info() {
return '<strong>ERROR</strong>: Stop guessing!';
}
add_filter( 'login_errors', 'show_less_login_info' );

View File

@ -1,103 +1,125 @@
<?php
/**
* Set the content width based on the theme's design and stylesheet.
* Theme basic setup.
*
* @package understrap
*/
require get_template_directory() . '/inc/theme-settings.php';
// Set the content width based on the theme's design and stylesheet.
if ( ! isset( $content_width ) ) {
$content_width = 640; /* pixels */
}
if ( ! function_exists( 'understrap_setup' ) ) :
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* Note that this function is hooked into the after_setup_theme hook, which
* runs before the init hook. The init hook is too late for some features, such
* as indicating support for post thumbnails.
*/
function understrap_setup() {
/*
* Make theme available for translation.
* Translations can be filed in the /languages/ directory.
* If you're building a theme based on understrap, use a find and replace
* to change 'understrap' to the name of your theme in all the template files
*/
load_theme_textdomain( 'understrap', get_template_directory() . '/languages' );
// Add default posts and comments RSS feed links to head.
add_theme_support( 'automatic-feed-links' );
/*
* Let WordPress manage the document title.
* By adding theme support, we declare that this theme does not use a
* hard-coded <title> tag in the document head, and expect WordPress to
* provide it for us.
*/
add_theme_support( 'title-tag' );
/*
* Enable support for Post Thumbnails on posts and pages.
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* @link http://codex.wordpress.org/Function_Reference/add_theme_support#Post_Thumbnails
* Note that this function is hooked into the after_setup_theme hook, which
* runs before the init hook. The init hook is too late for some features, such
* as indicating support for post thumbnails.
*/
//add_theme_support( 'post-thumbnails' );
function understrap_setup() {
/*
* Make theme available for translation.
* Translations can be filed in the /languages/ directory.
* If you're building a theme based on understrap, use a find and replace
* to change 'understrap' to the name of your theme in all the template files
*/
load_theme_textdomain( 'understrap', get_template_directory() . '/languages' );
// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => __( 'Primary Menu', 'understrap' ),
) );
// Add default posts and comments RSS feed links to head.
add_theme_support( 'automatic-feed-links' );
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'search-form', 'comment-form', 'comment-list', 'gallery', 'caption',
) );
/*
* Adding Thumbnail basic support
*/
add_theme_support( "post-thumbnails" );
/*
* Let WordPress manage the document title.
* By adding theme support, we declare that this theme does not use a
* hard-coded <title> tag in the document head, and expect WordPress to
* provide it for us.
*/
add_theme_support( 'title-tag' );
/*
* Enable support for Post Formats.
* See http://codex.wordpress.org/Post_Formats
*/
add_theme_support( 'post-formats', array(
'aside', 'image', 'video', 'quote', 'link',
) );
// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => __( 'Primary Menu', 'understrap' ),
) );
// Set up the WordPress core custom background feature.
add_theme_support( 'custom-background', apply_filters( 'understrap_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
// Set up the Wordpress Theme logo feature.
add_theme_support('custom-logo');
}
endif; // understrap_setup
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
) );
/*
* Adding Thumbnail basic support
*/
add_theme_support( 'post-thumbnails' );
/*
* Adding support for Widget edit icons in customizer
*/
add_theme_support( 'customize-selective-refresh-widgets' );
/*
* Enable support for Post Formats.
* See http://codex.wordpress.org/Post_Formats
*/
add_theme_support( 'post-formats', array(
'aside',
'image',
'video',
'quote',
'link',
) );
// Set up the WordPress core custom background feature.
add_theme_support( 'custom-background', apply_filters( 'understrap_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
// Set up the Wordpress Theme logo feature.
add_theme_support( 'custom-logo' );
// Check and setup theme default settings.
setup_theme_default_settings();
}
endif; // understrap_setup.
add_action( 'after_setup_theme', 'understrap_setup' );
/**
* Adding the Read more link to excerpts
*/
/*function new_excerpt_more( $more ) {
return ' <p><a class="read-more btn btn-default" href="'. get_permalink( get_the_ID() ) . '">' . __('Read More', 'understrap') . '</a></p>';
}
add_filter( 'excerpt_more', 'new_excerpt_more' );*/
/* Removes the ... from the excerpt read more link */
function custom_excerpt_more( $more ) {
return '';
if ( ! function_exists( 'custom_excerpt_more' ) ) {
/**
* Removes the ... from the excerpt read more link
*
* @param string $more The excerpt.
*
* @return string
*/
function custom_excerpt_more( $more ) {
return '';
}
}
add_filter( 'excerpt_more', 'custom_excerpt_more' );
/* Adds a custom read more link to all excerpts, manually or automatically generated */
if ( ! function_exists( 'all_excerpts_get_more_link' ) ) {
/**
* Adds a custom read more link to all excerpts, manually or automatically generated
*
* @param string $post_excerpt Posts's excerpt.
*
* @return string
*/
function all_excerpts_get_more_link( $post_excerpt ) {
function all_excerpts_get_more_link($post_excerpt) {
return $post_excerpt . ' [...]<p><a class="btn btn-secondary understrap-read-more-link" href="'. get_permalink( get_the_ID() ) . '">' . __('Read More...', 'understrap') . '</a></p>';
return $post_excerpt . ' [...]<p><a class="btn btn-secondary understrap-read-more-link" href="' . get_permalink( get_the_ID() ) . '">' . __( 'Read More...',
'understrap' ) . '</a></p>';
}
}
add_filter('wp_trim_excerpt', 'all_excerpts_get_more_link');
add_filter( 'wp_trim_excerpt', 'all_excerpts_get_more_link' );

7
inc/style-wpcom.css Normal file
View File

@ -0,0 +1,7 @@
/*
* Theme Name: Components
*
* Add any WordPress.com-specific CSS here
*
* This file is enqueued in /inc/wpcom.php
*/

View File

@ -7,7 +7,6 @@
* @package understrap
*/
if ( ! function_exists( 'understrap_posted_on' ) ) :
/**
* Prints HTML with meta information for the current post-date/time and author.
@ -15,28 +14,23 @@ if ( ! function_exists( 'understrap_posted_on' ) ) :
function understrap_posted_on() {
$time_string = '<time class="entry-date published updated" datetime="%1$s">%2$s</time>';
if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) {
$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">' . __( ' Edited %4$s', 'understrap' ) . '</time>';
$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">%4$s</time>';
}
$time_string = sprintf( $time_string,
esc_attr( get_the_date( 'c' ) ),
esc_html( get_the_date() ),
esc_attr( get_the_modified_date( 'c' ) ),
esc_html( get_the_modified_date() )
);
$posted_on = sprintf(
esc_html_x( 'Posted on %s', 'post date', 'understrap' ),
'<a href="' . esc_url( get_permalink() ) . '" rel="bookmark">' . $time_string . '</a>'
);
$byline = sprintf(
esc_html_x( 'by %s', 'post author', 'understrap' ),
'<span class="author vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author() ) . '</a></span>'
);
echo '<span class="posted-on">' . $posted_on . '</span><span class="byline"> ' . $byline . '</span>';
echo '<span class="posted-on">' . $posted_on . '</span><span class="byline"> ' . $byline . '</span>'; // WPCS: XSS OK.
}
endif;
@ -46,27 +40,24 @@ if ( ! function_exists( 'understrap_entry_footer' ) ) :
*/
function understrap_entry_footer() {
// Hide category and tag text for pages.
if ( 'post' == get_post_type() ) {
if ( 'post' === get_post_type() ) {
/* translators: used between list items, there is a space after the comma */
$categories_list = get_the_category_list( __( ', ', 'understrap' ) );
$categories_list = get_the_category_list( esc_html__( ', ', 'understrap' ) );
if ( $categories_list && understrap_categorized_blog() ) {
printf( '<span class="cat-links">' . __( 'Posted in %1$s', 'understrap' ) . '</span>', $categories_list );
printf( '<span class="cat-links">' . esc_html__( 'Posted in %1$s', 'understrap' ) . '</span>', $categories_list ); // WPCS: XSS OK.
}
/* translators: used between list items, there is a space after the comma */
$tags_list = get_the_tag_list( '', __( ', ', 'understrap' ) );
$tags_list = get_the_tag_list( '', esc_html__( ', ', 'understrap' ) );
if ( $tags_list ) {
printf( '<span class="tags-links">' . __( 'Tagged %1$s', 'understrap' ) . '</span>', $tags_list );
printf( '<span class="tags-links">' . esc_html__( 'Tagged %1$s', 'understrap' ) . '</span>', $tags_list ); // WPCS: XSS OK.
}
}
if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) {
echo '<span class="comments-link">';
comments_popup_link( __( 'Leave a comment', 'understrap' ), __( '1 Comment', 'understrap' ), __( '% Comments', 'understrap' ) );
comments_popup_link( esc_html__( 'Leave a comment', 'understrap' ), esc_html__( '1 Comment', 'understrap' ), esc_html__( '% Comments', 'understrap' ) );
echo '</span>';
}
edit_post_link(
edit_post_link(
sprintf(
/* translators: %s: Name of current post */
esc_html__( 'Edit %s', 'understrap' ),
@ -89,22 +80,18 @@ function understrap_categorized_blog() {
$all_the_cool_cats = get_categories( array(
'fields' => 'ids',
'hide_empty' => 1,
// We only need to know if there is more than one category.
'number' => 2,
) );
// Count the number of categories that are attached to the posts.
$all_the_cool_cats = count( $all_the_cool_cats );
set_transient( 'understrap_categories', $all_the_cool_cats );
}
if ( $all_the_cool_cats > 1 ) {
// This blog has more than 1 category so understrap_categorized_blog should return true.
// This blog has more than 1 category so components_categorized_blog should return true.
return true;
} else {
// This blog has only 1 category so understrap_categorized_blog should return false.
// This blog has only 1 category so components_categorized_blog should return false.
return false;
}
}
@ -121,3 +108,4 @@ function understrap_category_transient_flusher() {
}
add_action( 'edit_category', 'understrap_category_transient_flusher' );
add_action( 'save_post', 'understrap_category_transient_flusher' );

29
inc/theme-settings.php Normal file
View File

@ -0,0 +1,29 @@
<?php
/**
* Check and setup theme's default settings
*
* @package understrap
*
*/
function setup_theme_default_settings() {
// check if settings are set, if not set defaults.
// Caution: DO NOT check existence using === always check with == .
// Latest blog posts style.
$understrap_posts_index_style = get_theme_mod( 'understrap_posts_index_style' );
if ( '' == $understrap_posts_index_style ) {
set_theme_mod( 'understrap_posts_index_style', 'default' );
}
// Sidebar position.
$understrap_sidebar_position = get_theme_mod( 'understrap_sidebar_position' );
if ( '' == $understrap_sidebar_position ) {
set_theme_mod( 'understrap_sidebar_position', 'right' );
}
// Container width.
$understrap_container_type = get_theme_mod( 'understrap_container_type' );
if ( '' == $understrap_container_type ) {
set_theme_mod( 'understrap_container_type', 'container' );
}
}

View File

@ -2,49 +2,103 @@
/**
* Declaring widgets
*
*
* @package understrap
*/
function understrap_widgets_init() {
register_sidebar( array(
'name' => __( 'Sidebar', 'understrap' ),
'id' => 'sidebar-1',
'description' => 'Sidebar widget area',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
register_sidebar( array(
'name' => __( 'Hero Slider', 'understrap' ),
'id' => 'hero',
'description' => 'Hero slider area. Place two or more widgets here and they will slide!',
'before_widget' => '<div class="item">',
'after_widget' => '</div>',
'before_title' => '',
'after_title' => '',
) );
register_sidebar( array(
'name' => __( 'Hero Static', 'understrap' ),
'id' => 'statichero',
'description' => 'Static Hero widget. no slider functionallity',
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer Full', 'understrap' ),
'id' => 'footerfull',
'description' => 'Widget area below main content and above footer',
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => '',
) );
/**
* Count number of widgets in a sidebar
* Used to add classes to widget areas so widgets can be displayed one, two, three or four per row
*/
function slbd_count_widgets( $sidebar_id ) {
// If loading from front page, consult $_wp_sidebars_widgets rather than options
// to see if wp_convert_widget_settings() has made manipulations in memory.
global $_wp_sidebars_widgets;
if ( empty( $_wp_sidebars_widgets ) ) :
$_wp_sidebars_widgets = get_option( 'sidebars_widgets', array() );
endif;
$sidebars_widgets_count = $_wp_sidebars_widgets;
if ( isset( $sidebars_widgets_count[ $sidebar_id ] ) ) :
$widget_count = count( $sidebars_widgets_count[ $sidebar_id ] );
$widget_classes = 'widget-count-' . count( $sidebars_widgets_count[ $sidebar_id ] );
if ( $widget_count % 4 == 0 || $widget_count > 6 ) :
// Four widgets er row if there are exactly four or more than six
$widget_classes .= ' col-md-3';
elseif ( 6 == $widget_count ) :
// If two widgets are published
$widget_classes .= ' col-md-2';
elseif ( $widget_count >= 3 ) :
// Three widgets per row if there's three or more widgets
$widget_classes .= ' col-md-4';
elseif ( 2 == $widget_count ) :
// If two widgets are published
$widget_classes .= ' col-md-6';
elseif ( 1 == $widget_count ) :
// If just on widget is active
$widget_classes .= ' col-md-12';
endif;
return $widget_classes;
endif;
}
add_action( 'widgets_init', 'understrap_widgets_init' );
if ( ! function_exists( 'understrap_widgets_init' ) ) {
/**
* Initializes themes widgets.
*/
function understrap_widgets_init() {
register_sidebar( array(
'name' => __( 'Right Sidebar', 'understrap' ),
'id' => 'right-sidebar',
'description' => 'Right sidebar widget area',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
register_sidebar( array(
'name' => __( 'Left Sidebar', 'understrap' ),
'id' => 'left-sidebar',
'description' => 'Left sidebar widget area',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
register_sidebar( array(
'name' => __( 'Hero Slider', 'understrap' ),
'id' => 'hero',
'description' => 'Hero slider area. Place two or more widgets here and they will slide!',
'before_widget' => '<div class="carousel-item">',
'after_widget' => '</div>',
'before_title' => '',
'after_title' => '',
) );
register_sidebar( array(
'name' => __( 'Hero Static', 'understrap' ),
'id' => 'statichero',
'description' => 'Static Hero widget. no slider functionallity',
'before_widget' => '<div id="%1$s" class="static-hero-widget %2$s '. slbd_count_widgets( 'statichero' ) .'">',
'after_widget' => '</div><!-- .static-hero-widget -->',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
register_sidebar( array(
'name' => __( 'Footer Full', 'understrap' ),
'id' => 'footerfull',
'description' => 'Widget area below main content and above footer',
'before_widget' => '<div id="%1$s" class="footer-widget %2$s '. slbd_count_widgets( 'footerfull' ) .'">',
'after_widget' => '</div><!-- .footer-widget -->',
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
}
} // endif function_exists( 'understrap_widgets_init' ).
add_action( 'widgets_init', 'understrap_widgets_init' );

View File

@ -2,11 +2,101 @@
/**
* Add WooCommerce support
*
*
* @package understrap
*/
add_action( 'after_setup_theme', 'woocommerce_support' );
function woocommerce_support() {
add_theme_support( 'woocommerce' );
}
if ( ! function_exists( 'woocommerce_support' ) ) {
/**
* Declares WooCommerce theme support.
*/
function woocommerce_support() {
add_theme_support( 'understrap' );
// Add New Woocommerce 3.0.0 Product Gallery support
add_theme_support( 'wc-product-gallery-lightbox' );
add_theme_support( 'wc-product-gallery-zoom' );
// Gallery slider needs Flexslider - https://woocommerce.com/flexslider/
//add_theme_support( 'wc-product-gallery-slider' );
// hook in and customizer form fields.
add_filter( 'woocommerce_form_field_args', 'wc_form_field_args', 10, 3 );
}
}
/**
* Filter hook function monkey patching form classes
* Author: Adriano Monecchi http://stackoverflow.com/a/36724593/307826
*
* @param string $args Form attributes.
* @param string $key Not in use.
* @param null $value Not in use.
*
* @return mixed
*/
function wc_form_field_args( $args, $key, $value = null ) {
// Start field type switch case.
switch ( $args['type'] ) {
/* Targets all select input type elements, except the country and state select input types */
case 'select' :
// Add a class to the field's html element wrapper - woocommerce
// input types (fields) are often wrapped within a <p></p> tag.
$args['class'][] = 'form-group';
// Add a class to the form input itself.
$args['input_class'] = array( 'form-control', 'input-lg' );
$args['label_class'] = array( 'control-label' );
$args['custom_attributes'] = array(
'data-plugin' => 'select2',
'data-allow-clear' => 'true',
'aria-hidden' => 'true',
// Add custom data attributes to the form input itself.
);
break;
// By default WooCommerce will populate a select with the country names - $args
// defined for this specific input type targets only the country select element.
case 'country' :
$args['class'][] = 'form-group single-country';
$args['label_class'] = array( 'control-label' );
break;
// By default WooCommerce will populate a select with state names - $args defined
// for this specific input type targets only the country select element.
case 'state' :
// Add class to the field's html element wrapper.
$args['class'][] = 'form-group';
// add class to the form input itself.
$args['input_class'] = array( '', 'input-lg' );
$args['label_class'] = array( 'control-label' );
$args['custom_attributes'] = array(
'data-plugin' => 'select2',
'data-allow-clear' => 'true',
'aria-hidden' => 'true',
);
break;
case 'password' :
case 'text' :
case 'email' :
case 'tel' :
case 'number' :
$args['class'][] = 'form-group';
$args['input_class'] = array( 'form-control', 'input-lg' );
$args['label_class'] = array( 'control-label' );
break;
case 'textarea' :
$args['input_class'] = array( 'form-control', 'input-lg' );
$args['label_class'] = array( 'control-label' );
break;
case 'checkbox' :
$args['label_class'] = array( 'custom-control custom-checkbox' );
$args['input_class'] = array( 'custom-control-input', 'input-lg' );
break;
case 'radio' :
$args['label_class'] = array( 'custom-control custom-radio' );
$args['input_class'] = array( 'custom-control-input', 'input-lg' );
break;
default :
$args['class'][] = 'form-group';
$args['input_class'] = array( 'form-control', 'input-lg' );
$args['label_class'] = array( 'control-label' );
break;
} // end switch ($args).
return $args;
}

View File

@ -1,6 +1,6 @@
<?php
/**
* WordPress.com-specific functions and definitions.
* WordPress.com-specific functions and definitions
*
* This file is centrally included from `wp-content/mu-plugins/wpcom-theme-compat.php`.
*
@ -25,5 +25,16 @@ function understrap_wpcom_setup() {
'url' => '',
);
}
/* Add WP.com print styles */
add_theme_support( 'print-styles' );
}
add_action( 'after_setup_theme', 'understrap_wpcom_setup' );
/*
* WordPress.com-specific styles
*/
function understrap_wpcom_styles() {
wp_enqueue_style( 'understrap-wpcom', get_template_directory_uri() . '/inc/style-wpcom.css', '20160411' );
}
add_action( 'wp_enqueue_scripts', 'understrap_wpcom_styles' );

101
index.php
View File

@ -11,64 +11,69 @@
* @package understrap
*/
get_header(); ?>
get_header();
<?php
if ( is_front_page() && is_home() ) {
$container = get_theme_mod( 'understrap_container_type' );
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
get_sidebar('hero');
<?php if ( is_front_page() && is_home() ) : ?>
<?php get_template_part( 'global-templates/hero', 'none' ); ?>
<?php endif; ?>
get_sidebar('statichero');
} else {
// Do nothing...or?
}
?>
<div class="wrapper" id="wrapper-index">
<div class="wrapper" id="wrapper-index">
<div id="content" class="container">
<div class="<?php echo esc_html( $container ); ?>" id="content" tabindex="-1">
<div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area">
<main id="main" class="site-main" role="main">
<?php if ( have_posts() ) : ?>
<div class="row">
<?php /* Start the Loop */ ?>
<!-- Do the left sidebar check and opens the primary div -->
<?php get_template_part( 'global-templates/left-sidebar-check', 'none' ); ?>
<?php while ( have_posts() ) : the_post(); ?>
<main class="site-main" id="main">
<?php
/* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'loop-templates/content', get_post_format() );
?>
<?php if ( have_posts() ) : ?>
<?php endwhile; ?>
<?php the_posts_navigation(); ?>
<?php else : ?>
<?php /* Start the Loop */ ?>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php endif; ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
<?php while ( have_posts() ) : the_post(); ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php
/*
* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'loop-templates/content', get_post_format() );
?>
<?php endwhile; ?>
<?php else : ?>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php endif; ?>
</main><!-- #main -->
<!-- The pagination component -->
<?php understrap_pagination(); ?>
</div><!-- #primary -->
<!-- Do the right sidebar check -->
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'right' ); ?>
<?php endif; ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

20
js/customizer.js Normal file
View File

@ -0,0 +1,20 @@
/**
* This file adds some LIVE to the Theme Customizer live preview. To leverage
* this, set your custom settings to 'postMessage' and then add your handling
* here. Your javascript should grab settings from customizer controls, and
* then make any necessary changes to the page using jQuery.
*
* @see https://codex.wordpress.org/Theme_Customization_API#Part_3:_Configure_Live_Preview_.28Optional.29
*/
( function( $ ) {
// Update the site title in real time...
wp.customize( 'blogname', function( value ) {
value.bind( function( newval ) {
console.log(newval);
$( '.navbar-header a' ).html( newval );
} );
} );
} )( jQuery );

View File

@ -1,24 +0,0 @@
jQuery(document).ready(function() {
var owl = jQuery('.owl-carousel');
owl.owlCarousel({
items:(understrap_slider_variables.items),
loop:true,
autoplay:true,
autoplayTimeout:(understrap_slider_variables.timeout),
animateOut: 'fadeOut',
animateIn: 'fadeIn',
nav: false,
dots: true,
autoplayHoverPause:true,
margin:0,
autoHeight:true
});
jQuery('.play').on('click',function(){
owl.trigger('autoplay.play.owl',[1000])
});
jQuery('.stop').on('click',function(){
owl.trigger('autoplay.stop.owl')
});
});

File diff suppressed because one or more lines are too long

7
js/theme.min.js vendored

File diff suppressed because one or more lines are too long

View File

@ -1,36 +0,0 @@
/**
* Vertical page navigation
* A temporary source file providing smooth scrolling navigation to Pages
*/
(function( $ ) {
var currentPage = location.href;
var adjustedHeight = $( 'body' ).hasClass( 'admin-bar' ) ? 36 : 0;
var blogPage = vars.homeUrl + '/' + vars.pageForPosts;
if ( currentPage.substr( -1 ) === '/' ) {
currentPage = currentPage.substr( 0, currentPage.length - 1 );
}
$( document ).ready(function() {
// smoothly scroll to an ID
$( 'a[href*="#"]:not([href="#"])' ).click( function ( e ) {
var target;
// if not on root URL
if ( currentPage === blogPage || vars.isSingle ) {
target = $(this);
target = vars.homeUrl + '/' + target[0].hash;
location = target;
}
target = $( this.hash );
target = target.length ? target : $( '[name=' + this.hash.slice(1) + ']' );
if ( target.length ) {
$( 'html, body' ).delay( 100 ).animate({
scrollTop: target.offset().top - adjustedHeight
}, 800);
// put the hash in location bar
window.history.pushState( null, null, e.delegateTarget.href );
return false;
}
});
});
})( jQuery );

Binary file not shown.

View File

@ -2,11 +2,10 @@ msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2015-09-01 21:23+0200\n"
"PO-Revision-Date: Mon Jul 04 2016 09:14:23 GMT+0200 (CEST)\n"
"Last-Translator: holger <office@holgerkoenemann.de>\n"
"Language-Team: \n"
"Language: German\n"
"POT-Creation-Date: 2017-01-06 07:53+0000\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2017-01-06 08:09+0000\n"
"Language-Team: German\n"
"Plural-Forms: nplurals=2; plural=n != 1\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -19,7 +18,8 @@ msgstr ""
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"X-Loco-Target-Locale: de_DE\n"
"Last-Translator: holger <holger.koenemann@smartsteuer.de>\n"
"Language: de-DE\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
@ -43,244 +43,721 @@ msgstr ""
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc"
#: ../author.php:27
msgid "About:"
msgstr "Über:"
#: inc/customizer.php:99
msgid "Choose between Bootstrap's container and container-fluid"
msgstr ""
"Wähle zwischen dem Bootstrap \".conatiner\" und \".container-fluid\" style "
"aus"
#: ../author.php:34
msgid "Profile"
msgstr "Profil"
#: inc/customizer.php:151
msgid "Choose how to display latest posts"
msgstr "Wähle aus wie die letzten Beiträge angezeigt werden sollen"
#: ../author.php:38
msgid "Posts by"
msgstr "Beiträge von"
#: inc/customizer.php:156
msgid "Default"
msgstr "Standard"
#: ../comments.php:28
#: inc/customizer.php:157
msgid "Masonry"
msgstr "Masonry"
#: inc/customizer.php:158
msgid "Grid"
msgstr "Grid"
#: inc/customizer.php:187
msgid "Grid Post Columns"
msgstr "Grid Post Columns"
#: inc/customizer.php:188
msgid "Choose how many columns to use"
msgstr "Wähle aus wieviele Spalten benutzt werden sollen"
#: woocommerce/cart/proceed-to-checkout-button.php:27
msgid "Proceed to Checkout"
msgstr "Weiter zum Bezahlen"
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
msgid "Remove this item"
msgstr "Entferne diesen Artikel"
#: woocommerce/cart/mini-cart.php:72
msgid "No products in the cart."
msgstr "Keine Produkte im Einkaufswagen"
#: woocommerce/cart/mini-cart.php:80
msgid "Subtotal"
msgstr "Zwischensumme"
#: woocommerce/cart/mini-cart.php:85
msgid "View Cart"
msgstr "Einkaufswagen ansetzen"
#: woocommerce/cart/mini-cart.php:86
msgid "Checkout"
msgstr "Bezahlen"
#: woocommerce/cart/cart-empty.php:28
msgid "Your cart is currently empty."
msgstr "Der Einkaufswagen ist leer"
#: woocommerce/cart/cart-empty.php:36
msgid "Return To Shop"
msgstr "Zurück zum Shop"
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
#: woocommerce/checkout/form-pay.php:29
msgid "Product"
msgstr "Produkt"
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
msgid "Price"
msgstr "Preis"
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
msgid "Quantity"
msgstr "Menge"
#: woocommerce/cart/cart.php:39 woocommerce/cart/cart.php:120
#: woocommerce/myaccount/my-orders.php:16
msgid "Total"
msgstr "Gesamt"
#: woocommerce/cart/cart.php:92
msgid "Available on backorder"
msgstr "Wird nachbestellt"
#: woocommerce/cart/cart.php:138
msgid "Coupon:"
msgstr "Coupon:"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:36
msgid "Coupon code"
msgstr "Coupon code"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:40
msgid "Apply Coupon"
msgstr "Coupon anwenden"
#: woocommerce/cart/cart.php:144
msgid "Update Cart"
msgstr "Einkaufswagen aktualisieren"
#: woocommerce/checkout/payment.php:35
msgid ""
"Sorry, it seems that there are no available payment methods for your state. "
"Please contact us if you require assistance or wish to make alternate "
"arrangements."
msgstr ""
#: woocommerce/checkout/payment.php:35
msgid "Please fill in your details above to see available payment methods."
msgstr ""
#: woocommerce/checkout/payment.php:42
msgid ""
"Since your browser does not support JavaScript, or it is disabled, please "
"ensure you click the <em>Update Totals</em> button before placing your order."
" You may be charged more than the amount stated above if you fail to do so."
msgstr ""
#: woocommerce/checkout/payment.php:43
msgid "Update totals"
msgstr "Aktualisieren"
#: woocommerce/checkout/form-pay.php:30
msgid "Qty"
msgstr "Menge"
#: woocommerce/checkout/form-pay.php:31
msgid "Totals"
msgstr "Gesamt"
#: woocommerce/checkout/form-pay.php:79
msgid ""
"Sorry, it seems that there are no available payment methods for your "
"location. Please contact us if you require assistance or wish to make "
"alternate arrangements."
msgstr ""
#: woocommerce/checkout/form-coupon.php:28
msgid "Have a coupon?"
msgstr "Hast du ein Coupon?"
#: woocommerce/checkout/form-coupon.php:28
msgid "Click here to enter your code"
msgstr "Hier klicken um dienen Code einzugeben"
#: woocommerce/global/form-login.php:35
#: woocommerce/myaccount/form-lost-password.php:30
msgid "Username or email"
msgstr "Benutzername oder E-Mail"
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
#: woocommerce/myaccount/form-login.php:98
msgid "Password"
msgstr "Passwort"
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
#: woocommerce/myaccount/form-login.php:56
msgid "Login"
msgstr "Benutzername"
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
msgid "Remember me"
msgstr "Erinnere mich"
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
msgid "Lost your password?"
msgstr "Passwort vergessen?"
#: woocommerce/global/quantity-input.php:24
msgctxt "Product quantity input tooltip"
msgid "Qty"
msgstr "Menge"
#: woocommerce/myaccount/form-lost-password.php:27
msgid ""
"Lost your password? Please enter your username or email address. You will "
"receive a link to create a new password via email."
msgstr ""
"Passwort vergessen? Bitte gib deinen Benutzernamen oder E-Mail Adresse ein. "
"Du wirst dann per E-Mail erhalten einen Link erhalten mit dem du ein neues "
"Passwort vergeben kannst"
#: woocommerce/myaccount/form-lost-password.php:40
msgid "Reset Password"
msgstr "Passwort zurücksetzen"
#: woocommerce/myaccount/form-login.php:44
msgid "Username or email address"
msgstr "Benutername oder E-Mail Adresse"
#: woocommerce/myaccount/form-login.php:75
#: woocommerce/myaccount/form-login.php:112
msgid "Register"
msgstr "Registrieren"
#: woocommerce/myaccount/form-login.php:84
msgid "Username"
msgstr "Benutzername"
#: woocommerce/myaccount/form-login.php:91
#: woocommerce/myaccount/form-edit-account.php:40
msgid "Email address"
msgstr "E-Mail Adresse"
#: woocommerce/myaccount/form-login.php:105
msgid "Anti-spam"
msgstr "Spam Schutz"
#: woocommerce/myaccount/form-edit-account.php:30
msgid "First name"
msgstr "Vorname"
#: woocommerce/myaccount/form-edit-account.php:34
msgid "Last name"
msgstr "Nachname"
#: woocommerce/myaccount/form-edit-account.php:45
msgid "Password Change"
msgstr "Passwort ändern"
#: woocommerce/myaccount/form-edit-account.php:48
msgid "Current Password (leave blank to leave unchanged)"
msgstr "Momentanes Passwort (Leer lassen wenn es nicht geändert werden soll)"
#: woocommerce/myaccount/form-edit-account.php:52
msgid "New Password (leave blank to leave unchanged)"
msgstr "Neues Passwort (Leer lassen wenn es nicht geändert werden soll)"
#: woocommerce/myaccount/form-edit-account.php:56
msgid "Confirm New Password"
msgstr "Neues Passwort bestätigen"
#: woocommerce/myaccount/form-edit-account.php:66
msgid "Save changes"
msgstr "Änderungen speichern"
#: woocommerce/myaccount/my-orders.php:13
msgid "Order"
msgstr "Bestellung"
#: woocommerce/myaccount/my-orders.php:14
msgid "Date"
msgstr "Datum"
#: woocommerce/myaccount/my-orders.php:15
msgid "Status"
msgstr "Status"
#: woocommerce/myaccount/my-orders.php:30
msgid "Recent Orders"
msgstr "Kürzlich bestellt"
#: woocommerce/myaccount/my-orders.php:55 woocommerce/myaccount/orders.php:51
msgctxt "hash before order number"
msgid "#"
msgstr ""
#: woocommerce/myaccount/my-orders.php:65 woocommerce/myaccount/orders.php:61
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Ein Kommentar zu &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s Kommentare zu &ldquo;%2$s&rdquo;"
msgid "%s for %s item"
msgid_plural "%s for %s items"
msgstr[0] "%s für %s Artikel"
msgstr[1] "%s für %s Artikel"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Kommentar Navigation"
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
msgid "Pay"
msgstr "Bezahlen"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Ältere Kommentare"
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
msgid "View"
msgstr "Anschauen"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Neuere Kommentare &rarr;"
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
msgid "Cancel"
msgstr "Abbrechen"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Kommentare sind geschlossen"
#: woocommerce/myaccount/orders.php:107
msgid "Previous"
msgstr "Vorher"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Webseite"
#: woocommerce/myaccount/orders.php:111
msgid "Next"
msgstr "Nächste"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
msgid "Go Shop"
msgstr "In den Shop"
#: ../footer.php:24
#: woocommerce/myaccount/orders.php:121
msgid "No order has been made yet."
msgstr "Es wurde keine Bestellung vorgenommen"
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Billing Address"
msgstr "Rechnungsadresse"
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Shipping Address"
msgstr "Lieferadresse"
#: woocommerce/myaccount/form-edit-address.php:46
msgid "Save Address"
msgstr "Adresse speichern"
#: woocommerce/myaccount/form-reset-password.php:27
msgid "Enter a new password below."
msgstr "Gib unten eine neues Passwort ein"
#: woocommerce/myaccount/form-reset-password.php:30
msgid "New password"
msgstr "Neues Passwort"
#: woocommerce/myaccount/form-reset-password.php:34
msgid "Re-enter new password"
msgstr "Wiederhole das Passwort"
#: woocommerce/myaccount/form-reset-password.php:47
msgid "Save"
msgstr "Speichern"
#: woocommerce/myaccount/downloads.php:59
msgid "&infin;"
msgstr "&infin;"
#: woocommerce/myaccount/downloads.php:67
msgid "Never"
msgstr "Nie"
#: woocommerce/myaccount/downloads.php:75
msgid "Download"
msgstr "Download"
#: woocommerce/myaccount/downloads.php:100
msgid "No downloads available yet."
msgstr "Kein Download verfügbar"
#: woocommerce/single-product/review-rating.php:28
#, php-format
msgid "Proudly powered by %s"
msgstr "Stolz präsentiert von %s"
msgid "Rated %d out of 5"
msgstr "Bewertet mit %d von 5"
#: ../footer.php:26
#: woocommerce/single-product/review-rating.php:29
msgid "out of 5"
msgstr "von 5"
#: woocommerce/single-product/rating.php:36
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Theme: %1$s von %2$s."
msgid "Rated %s out of 5"
msgstr "Bewertet mit %s von 5"
#: ../header.php:30
msgid "Skip to content"
msgstr "Zum Inhalt springen"
#: woocommerce/single-product/rating.php:38
#, php-format
msgid "out of %s5%s"
msgstr "von %s5%s"
#: ../search.php:23
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as a parent theme. It is up to you. Including Font Awesome "
"support, built-in widget slider and much more you need for basic websites. "
"IMPORTANT: All developer dependencies are not bundled with this install file."
" Just download the .zip, extract it and run \"npm install\" and \"gulp copy-"
"assets\" inside the extracted /understrap folder."
msgstr ""
#: search.php:29
#, php-format
msgid "Search Results for: %s"
msgstr "Suchergebnis für: %s"
msgstr "Suchergebnisse für: %s"
#: ../404.php:22
#: header.php:34
msgid "Skip to content"
msgstr "Zum Inhalt"
#: 404.php:24
msgid "Oops! That page can&rsquo;t be found."
msgstr "Ooooops! Die Seite wurde nicht gefunden."
msgstr "Oooops! Diese Seite konnte nicht gefunden werden"
#: ../404.php:27
#: 404.php:31
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"Es scheint, dass hier nichts gefunden wurde. Versuch doch einen der Links "
"unten oder die Suchfunktion."
"Es scheint das hier nichts gefunden wurde. Vielleicht solltest du einen der "
"Links unten oder die Suche verwenden?"
#: ../404.php:37
#: 404.php:42
msgid "Most Used Categories"
msgstr "Am häufigsten genutzte Kategorie"
msgstr "Meist genutzte Kategorie"
#: ../404.php:57
#. translators: %1$s: smiley
#: 404.php:62
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Versuch im monatlichen Archiv zu schauen. %1$s"
msgstr "Versuch es mal im monatlichen Archiv"
#: ../searchform.php:9 ../searchform.php:13
#: author.php:34
msgid "About:"
msgstr "Über:"
#: author.php:42 inc/custom-comments.php:30
msgid "Website"
msgstr "Webseite"
#: author.php:49
msgid "Profile"
msgstr "Profil"
#: author.php:54
msgid "Posts by"
msgstr "Artikel von"
#: author.php:68
msgid "in"
msgstr "in"
#: comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Ein Gedanke zu &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s Gedanken zu &ldquo;%2$s&rdquo;"
#: comments.php:36 comments.php:59
msgid "Comment navigation"
msgstr "Kommentar Navigation"
#: comments.php:38 comments.php:61
msgid "&larr; Older Comments"
msgstr "&larr; Ältere Kommentare"
#: comments.php:42 comments.php:65
msgid "Newer Comments &rarr;"
msgstr "Neuere Kommentare &rarr;"
#: comments.php:78
msgid "Comments are closed."
msgstr "Kommentare sind geschlossen"
#: footer.php:27
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: footer.php:28
#, php-format
msgid "Proudly powered by %s"
msgstr "Stolz angetrieben durch %s"
#: footer.php:31
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Theme: %1$s von %2$s."
#: footer.php:33
#, php-format
msgid "Version: %1$s"
msgstr "Version: %1$s"
#: searchform.php:10 searchform.php:16
msgid "Search"
msgstr "Suche"
#: ../searchform.php:11
#: searchform.php:13
msgid "Search &hellip;"
msgstr "Suche &hellip;"
msgstr "Suche ..."
#: loop-templates/content-card.php:43 loop-templates/content-page.php:25
#: loop-templates/content.php:37 loop-templates/content-single.php:31
#: loop-templates/content-verticalpage.php:28
msgid "Pages:"
msgstr "Seiten:"
#: loop-templates/content-page.php:34
#: loop-templates/content-verticalpage.php:37
msgid "Edit"
msgstr "Editieren"
#: loop-templates/content-none.php:15
msgid "Nothing Found"
msgstr "Nichts gefunden"
#: loop-templates/content-none.php:23
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Bereit deinen ersten articel zu veröffentlichen? <a href=\"%1$s\">Dann fang "
"hier an</a>."
#: loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Entschuldigung, aber leider wurde nichts zu deinem Suchbegriff gefunden. "
"Versuche es erneut mit einem anderen Suchbegriff."
#: loop-templates/content-none.php:34
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr ""
"Leider konnten wir nicht das finden wonach du gesucht hast. Vielleicht kann "
"dir die Suche helfen. "
#. Name of the template
msgid "Full Width Page"
msgstr "Volle Breite"
msgid "Blank Page Template"
msgstr "Komplett leere Seiten-Vorlage"
#. Name of the template
msgid "Left and Right Sidebar Layout"
msgstr "Linke und rechte Seitenspalte"
#. Name of the template
msgid "Empty Page Template"
msgstr "Leeres Seiten- Template"
msgstr "Leere Seiten-Vorlage"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Sidebar"
#. Name of the template
msgid "Full Width Page"
msgstr "Seite mit voller Breite"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Hero (Slider)"
#. Name of the template
msgid "Left Sidebar Layout"
msgstr "Layout mit linker Seitenleiste"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Hero (statisch)"
#. Name of the template
msgid "Vertical One Page"
msgstr "Vertikales \"One Pager\" Layout"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Footer (volle Breite)"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Slider Einstellungen"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Anzahl der Slides die auf einmal angezeigt werden"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Slider Zeit (in ms)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Slider Inhalt wiederholen?"
#: ../inc/template-tags.php:18
#: inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr "Bearbeitet: %4$s"
msgstr "Bearbeitet %4$s"
#: ../inc/template-tags.php:29
#: inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Veröffentlicht am %s"
#: ../inc/template-tags.php:34
#: inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "von %s"
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
#. translators: used between list items, there is a space after the comma
#: inc/template-tags.php:51 inc/template-tags.php:57
msgid ", "
msgstr ", "
msgstr ","
#: ../inc/template-tags.php:53
#: inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Veröffentlicht in %1$s"
msgstr "Veröffentlicht in %1$s"
#: ../inc/template-tags.php:59
#: inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Getagt mit: %1$s"
msgstr "Tagged %1$s"
#: ../inc/template-tags.php:65
#: inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Hinterlasse ein Kommentar"
msgstr "Kommentar hinterlassen"
#: ../inc/template-tags.php:65
#: inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Kommentar"
#: ../inc/template-tags.php:65
#, php-format
#: inc/template-tags.php:65
msgid "% Comments"
msgstr "% Kommentare"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#: inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Bearbeite %s"
msgstr "Editiere %s"
#: ../inc/setup.php:48
#: inc/template-tags.php:143
msgid "Post navigation"
msgstr "Beitrags- Navigation"
#: inc/template-tags.php:148
msgctxt "Previous post link"
msgid "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
msgstr "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
#: inc/template-tags.php:151
msgctxt "Next post link"
msgid "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
msgstr "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
#: inc/setup.php:51
msgid "Primary Menu"
msgstr "Hauptmenü"
#: ../inc/setup.php:98
#: inc/setup.php:122
msgid "Read More..."
msgstr "Weiterlesen..."
#: ../inc/custom-comments.php:12
#: inc/widgets.php:14
msgid "Right Sidebar"
msgstr "Rechte Seitenleiste"
#: inc/widgets.php:24
msgid "Left Sidebar"
msgstr "Linke Seitenleiste"
#: inc/widgets.php:34
msgid "Hero Slider"
msgstr "\"Bühnen\" - Slider"
#: inc/widgets.php:44
msgid "Hero Static"
msgstr "Statische \"Bühne\""
#: inc/widgets.php:54
msgid "Footer Full"
msgstr "Fußbereich"
#: inc/custom-comments.php:24
msgid "Name"
msgstr "Name"
#: ../inc/custom-comments.php:14
#: inc/custom-comments.php:27
msgid "Email"
msgstr "E-Mail"
msgstr "Email"
#: ../inc/custom-comments.php:25
#: inc/custom-comments.php:49
msgctxt "noun"
msgid "Comment"
msgstr "Kommentar"
msgstr "Kommentare"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: loop-templates/content-page.php:25
msgid "Pages:"
msgstr "Seiten:"
#: inc/customizer.php:36
msgid "Slider Settings"
msgstr "Slider Einstellungen"
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "Nichts gefunden"
#: inc/customizer.php:45
msgid "Number of slides displaying at once"
msgstr "Anzahl der Slides die auf einmal angezeigt werden"
#: ../loop-templates/content-none.php:24
#: inc/customizer.php:57
msgid "Slider Time (in ms)"
msgstr "Zeit von Slide zu Slide in ms"
#: inc/customizer.php:69
msgid "Loop Slider Content"
msgstr "Soll der Slider von vorne anfangen?"
#: inc/customizer.php:81
msgid "Theme Layout Settings"
msgstr "Theme Layout Einstellungen"
#: inc/customizer.php:83
msgid "Container width and sidebar defaults"
msgstr "\".container\" Weite und Seitenleisten- Einstellungen"
#: inc/customizer.php:98
msgid "Container Width"
msgstr "\".container\" Breite"
#: inc/customizer.php:104
msgid "Fixed width container"
msgstr "\".container\" mit fester Breite"
#: inc/customizer.php:105
msgid "Full width container"
msgstr "\".container\" mit voller Seitenbreite"
#: inc/customizer.php:122
msgid "Sidebar Positioning"
msgstr "Seitenleisten Positionierung"
#: inc/customizer.php:123
msgid "Set sidebar's position. Can either be: right, left, both or none"
msgstr ""
"Stelle die Standard- Position der Seitenleiste ein. Zur Auswahl stehen: "
"Rechts, links, beides oder nichts."
#: inc/customizer.php:129
msgid "Right sidebar"
msgstr "Rechte Seitenleiste"
#: inc/customizer.php:130
msgid "Left sidebar"
msgstr "Linke Seitenleiste"
#: inc/customizer.php:131
msgid "Left & Right sidebars"
msgstr "Linke und rechte Seitenleiste"
#: inc/customizer.php:132
msgid "No sidebar"
msgstr "Keine Seitenleiste"
#: inc/customizer.php:150
msgid "Posts Index Style"
msgstr "Layout der Beiträge auf der Startseite"
#: woocommerce/single-product/rating.php:39
#, php-format
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Bereit deinen ersten Beitrag zu veröffentlichen? <a href=\"%1$s\">Fang hier "
"an</a>."
msgid "based on %s customer rating"
msgid_plural "based on %s customer ratings"
msgstr[0] "basierend auf %s Kundenbewertungen"
msgstr[1] "basierend auf %s Kundenbewertungen"
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Entschuldigung, leider wurde nichts zu deinem Suchbegriff gefunden. Versuch "
"etwas anderes aus!"
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr ""
"Es scheint das wir nicht herausfinden konnten wonach du gesucht hast. Suchen "
"könnte helfen!"
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Bearbeiten"
#: woocommerce/single-product/rating.php:42
#, php-format
msgid "%s customer review"
msgid_plural "%s customer reviews"
msgstr[0] "%s Kunden Bewertung"
msgstr[1] "%s Kunden Bewertungen"
#. Name of the theme
msgid "UnderStrap"
@ -290,19 +767,9 @@ msgstr "UnderStrap"
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"Kombination von Automattic´s _s Starter Theme und Bootstrap 4. Entwickelt "
"als solider Startpunkt für die eigenen Theme Entwicklung. UnderStrap kann "
"als Starter Theme oder als Theme Framework genutzt werden."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
msgstr "Holger Könemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"

Binary file not shown.

View File

@ -3,14 +3,16 @@ msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2016-10-26 00:31+0300\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2016-10-26 01:13+0300\n"
"POT-Creation-Date: 2016-12-20 18:54+0200\n"
"PO-Revision-Date: 2016-12-20 19:47+0200\n"
"Last-Translator: \n"
"Language-Team: stef.kariotidis@gmail.com\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language: el_GR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.7.1\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
@ -19,8 +21,6 @@ msgstr ""
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"Last-Translator: \n"
"Language: el_GR\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
@ -44,74 +44,20 @@ msgstr ""
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Μία σκέψη για &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s σκέψεις για &ldquo;%2$s&rdquo;"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Πλοήγηση στα σχόλια"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Παλαιότερα Σχόλια"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Νεότερα Σχόλια &rarr;"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Τα σχόλια είναι απενεργοποιημένα."
#: ../author.php:27
msgid "About:"
msgstr "Σχετικά με:"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Ιστότοπος"
#: ../author.php:34
msgid "Profile"
msgstr "Προφίλ"
#: ../author.php:38
msgid "Posts by"
msgstr "Δημοσιεύσεις από"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Με τη στήριξη από %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Θέμα %1$s από %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "Προχωρήστε στο περιεχόμενο"
#: ../search.php:23
#: search.php:29
#, php-format
msgid "Search Results for: %s"
msgstr "Αποτελέσματα Αναζήτησης για: %s"
#: ../404.php:22
#: header.php:34
msgid "Skip to content"
msgstr "Προχωρήστε στο περιεχόμενο"
#: 404.php:24
msgid "Oops! That page can&rsquo;t be found."
msgstr "Ουπς! Η σελίδα δεν βρέθηκε. "
#: ../404.php:27
#: 404.php:31
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
@ -119,146 +65,103 @@ msgstr ""
"Φαίνεται ότι δεν βρέθηκε κάτι σε αυτή τη τοποθεσία. Ίσως να δοκιμάζατε έναν "
"απο τους παρακάτω συνδέσμους ή την αναζήτηση;"
#: ../404.php:37
#: 404.php:42
msgid "Most Used Categories"
msgstr "Οι πιο Χρησιμοποιημένες Κατηγορίες"
#. translators: %1$s: smiley
#: ../404.php:57
#: 404.php:62
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Δείτε στα μηνιαία αρχεία. %1$s"
#: ../searchform.php:9 ../searchform.php:13
#: author.php:34
msgid "About:"
msgstr "Σχετικά με:"
#: author.php:42 inc/custom-comments.php:30
msgid "Website"
msgstr "Ιστότοπος"
#: author.php:49
msgid "Profile"
msgstr "Προφίλ"
#: author.php:54
msgid "Posts by"
msgstr "Δημοσιεύσεις από"
#: author.php:68
msgid "in"
msgstr "σε"
#: comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Μία σκέψη για &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s σκέψεις για &ldquo;%2$s&rdquo;"
#: comments.php:36 comments.php:59
msgid "Comment navigation"
msgstr "Πλοήγηση στα σχόλια"
#: comments.php:38 comments.php:61
msgid "&larr; Older Comments"
msgstr "&larr; Παλαιότερα Σχόλια"
#: comments.php:42 comments.php:65
msgid "Newer Comments &rarr;"
msgstr "Νεότερα Σχόλια &rarr;"
#: comments.php:78
msgid "Comments are closed."
msgstr "Τα σχόλια είναι απενεργοποιημένα."
#: footer.php:27
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: footer.php:28
#, php-format
msgid "Proudly powered by %s"
msgstr "Με τη στήριξη από %s"
#: footer.php:31
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Θέμα %1$s από %2$s."
#: footer.php:33
#, php-format
msgid "Version: %1$s"
msgstr "Έκδοση: %1$s\t"
#: searchform.php:10 searchform.php:16
msgid "Search"
msgstr "Αναζήτηση"
#: ../searchform.php:11
#: searchform.php:13
msgid "Search &hellip;"
msgstr "Αναζήτηση &hellip;"
#. Name of the template
msgid "Full Width Page"
msgstr "Σελίδα Πλήρους Πλάτους"
#. Name of the template
msgid "Empty Page Template"
msgstr "Πρότυπο Κενής Σελίδας"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Πλευρικό Μενου"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Ολισθητής Hero"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Στατικό Hero"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Υποσέλιδο Πλήρες"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Ρυθμίσεις Ολισθητή"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Αριθμός διαφανειών που θα προβάλλονται με τη μία"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Χρόνος Ολισθητή(σε μιλισεκόντ)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Περιεχόμενο Ολισθητή κατά τον Βρόχο"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr "Επεξεργάστηκε %4$s"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Αναρτήθηκε την %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "από %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ", "
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Αναρτήθηκε σε %1$s"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Σημειώθηκε %1$s"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Αφήστε σχόλιο"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Σχόλιο"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% Σχόλια"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Επεξεργασία %s"
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "Κυρίως Μενού"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "Διαβάστε Περισσότερα..."
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "Όνομα"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "Ηλεκτρονική Διεύθυνση"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "Σχόλιο"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: /loop-templates/content-page.php:25
#: loop-templates/content-card.php:43 loop-templates/content-page.php:25
#: loop-templates/content.php:37 loop-templates/content-single.php:31
#: loop-templates/content-verticalpage.php:28
msgid "Pages:"
msgstr "Σελίδες:"
#: ../loop-templates/content-none.php:16
#: loop-templates/content-page.php:34
#: loop-templates/content-verticalpage.php:37
msgid "Edit"
msgstr "Επεξεργασία"
#: loop-templates/content-none.php:15
msgid "Nothing Found"
msgstr "Δεν βρέθηκε κάτι"
#: ../loop-templates/content-none.php:24
#: loop-templates/content-none.php:23
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
@ -266,7 +169,7 @@ msgstr ""
"Έτοιμος/η να δημοσιεύσετε την πρώτη σας ανάρτηση; <a href=\"%1$s\">Ξεκινήστε "
"εδώ</a>."
#: ../loop-templates/content-none.php:28
#: loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
@ -274,7 +177,7 @@ msgstr ""
"Συγγνώμη, δεν βρέθηκε κάτι που να ταιριάζει με τα κριτήρια αναζήτησης. "
"Παρακαλούμε δοκιμάστε πάλι με νέα κριτήρια."
#: ../loop-templates/content-none.php:33
#: loop-templates/content-none.php:34
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
@ -282,32 +185,625 @@ msgstr ""
"Φαίνεται ότι δεν μπορούμε να βρούμε αυτό που αναζητάτε. Ίσως βοηθήσει η "
"αναζήτηση."
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Επεξεργασία"
#. Name of the template
msgid "Blank Page Template"
msgstr "Υπόδειγμα Κενής Σελίδας"
#. Name of the template
msgid "Left and Right Sidebar Layout"
msgstr "Διάταξη με Αριστερή και Δεξιά Εργαλειοθήκη"
#. Name of the template
msgid "Empty Page Template"
msgstr "Πρότυπο Κενής Σελίδας"
#. Name of the template
msgid "Full Width Page"
msgstr "Σελίδα Πλήρους Πλάτους"
#. Name of the template
msgid "Left Sidebar Layout"
msgstr "Διάταξη με Αριστερή Εργαλειοθήκη"
#. Name of the template
msgid "Vertical One Page"
msgstr "Διάταξη Μονής Κατακόρυφης Σελίδας"
#: inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr "Επεξεργάστηκε %4$s"
#: inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Αναρτήθηκε την %s"
#: inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "από %s"
#. translators: used between list items, there is a space after the comma
#: inc/template-tags.php:51 inc/template-tags.php:57
msgid ", "
msgstr ", "
#: inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Αναρτήθηκε σε %1$s"
#: inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Σημειώθηκε %1$s"
#: inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Αφήστε σχόλιο"
#: inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Σχόλιο"
#: inc/template-tags.php:65
msgid "% Comments"
msgstr "% Σχόλια"
#. translators: %s: Name of current post
#: inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Επεξεργασία %s"
#: inc/template-tags.php:143
msgid "Post navigation"
msgstr "Πλοήγηση στα Άρθρα"
#: inc/template-tags.php:148
msgctxt "Previous post link"
msgid "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
msgstr "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
#: inc/template-tags.php:151
msgctxt "Next post link"
msgid "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
msgstr "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
#: inc/setup.php:51
msgid "Primary Menu"
msgstr "Κυρίως Μενού"
#: inc/setup.php:122
msgid "Read More..."
msgstr "Διαβάστε Περισσότερα..."
#: inc/widgets.php:14
msgid "Right Sidebar"
msgstr "Δεξιά Εργαλειοθήκη"
#: inc/widgets.php:24
msgid "Left Sidebar"
msgstr "Αριστερή Εργαλειοθήκη"
#: inc/widgets.php:34
msgid "Hero Slider"
msgstr "Ολισθητής Hero"
#: inc/widgets.php:44
msgid "Hero Static"
msgstr "Στατικό Hero"
#: inc/widgets.php:54
msgid "Footer Full"
msgstr "Υποσέλιδο Πλήρες"
#: inc/custom-comments.php:24
msgid "Name"
msgstr "Όνομα"
#: inc/custom-comments.php:27
msgid "Email"
msgstr "Ηλεκτρονική Διεύθυνση"
#: inc/custom-comments.php:49
msgctxt "noun"
msgid "Comment"
msgstr "Σχόλιο"
#: inc/customizer.php:36
msgid "Slider Settings"
msgstr "Ρυθμίσεις Ολισθητή"
#: inc/customizer.php:45
msgid "Number of slides displaying at once"
msgstr "Αριθμός διαφανειών που θα προβάλλονται με τη μία"
#: inc/customizer.php:57
msgid "Slider Time (in ms)"
msgstr "Χρόνος Ολισθητή(σε μιλισεκόντ)"
#: inc/customizer.php:69
msgid "Loop Slider Content"
msgstr "Περιεχόμενο Ολισθητή κατά τον Βρόχο"
#: inc/customizer.php:81
msgid "Theme Layout Settings"
msgstr "Ρυθμίσεις Διάταξης Θέματος"
#: inc/customizer.php:83
msgid "Container width and sidebar defaults"
msgstr "Πλάτος Διάταξης και Προεπιλογές Εργαλειοθήκης"
#: inc/customizer.php:98
msgid "Container Width"
msgstr "Πλάτος Διάταξης"
#: inc/customizer.php:99
msgid "Choose between Bootstrap's container and container-fluid"
msgstr "Επιλογή μεταξύ πλήρους ή μη πλάτους"
#: inc/customizer.php:104
msgid "Fixed width container"
msgstr "Περιορισμένου πλάτους διάταξη"
#: inc/customizer.php:105
msgid "Full width container"
msgstr "Πλήρους πλάτους διάταξη"
#: inc/customizer.php:122
msgid "Sidebar Positioning"
msgstr "Τοποθέτηση Εργαλειοθήκης"
#: inc/customizer.php:123
msgid "Set sidebar's position. Can either be: right, left, both or none"
msgstr ""
"Ορισμός θέσεως εργαλειοθήκης. Μπορεί να είναι ένα εκ των: δεξιά, αριστερά, "
"και τα δύο ή καμία."
#: inc/customizer.php:129
msgid "Right sidebar"
msgstr "Εργαλειοθήκη δεξιά"
#: inc/customizer.php:130
msgid "Left sidebar"
msgstr "Εργαλειοθήκη αριστερά"
#: inc/customizer.php:131
msgid "Left & Right sidebars"
msgstr "Εργαλειοθήκες αριστερά & δεξιά"
#: inc/customizer.php:132
msgid "No sidebar"
msgstr "Χωρίς εργαλειοθήκη"
#: inc/customizer.php:150
msgid "Posts Index Style"
msgstr "Στυλ Αρχικής Σελίδας Άρθρων"
#: inc/customizer.php:151
msgid "Choose how to display latest posts"
msgstr "Επιλέξτε πως θα εμφανίζονται τα πρόσφατα άρθρα"
#: inc/customizer.php:156
msgid "Default"
msgstr "Προεπιλογή"
#: inc/customizer.php:157
msgid "Masonry"
msgstr "Tοιχοποιία (masonry)"
#: inc/customizer.php:158
msgid "Grid"
msgstr "Πλέγμα (grid)"
#: inc/customizer.php:187
msgid "Grid Post Columns"
msgstr "Αριθμός κολονών πλέγματος"
#: inc/customizer.php:188
msgid "Choose how many columns to use"
msgstr "Επιλέξτε πόσες κολώνες θα χρησιμοποιούνται"
#: woocommerce/cart/proceed-to-checkout-button.php:27
msgid "Proceed to Checkout"
msgstr "Προχωρήστε στην Πληρωμή"
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
msgid "Remove this item"
msgstr "Αφαίρεση προϊόντος"
#: woocommerce/cart/mini-cart.php:72
msgid "No products in the cart."
msgstr "Δεν υπάρχουν προϊόντα στο καλάθι."
#: woocommerce/cart/mini-cart.php:80
msgid "Subtotal"
msgstr "Μερικό σύνολο"
#: woocommerce/cart/mini-cart.php:85
msgid "View Cart"
msgstr "Εμφάνιση Καλαθιού"
#: woocommerce/cart/mini-cart.php:86
msgid "Checkout"
msgstr "Πληρωμή"
#: woocommerce/cart/cart-empty.php:28
msgid "Your cart is currently empty."
msgstr "Το καλάθι σας είναι κενό."
#: woocommerce/cart/cart-empty.php:36
msgid "Return To Shop"
msgstr "Επιστροφή στο Κατάστημα"
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
#: woocommerce/checkout/form-pay.php:29
msgid "Product"
msgstr "Προϊόν"
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
msgid "Price"
msgstr "Τιμή"
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
msgid "Quantity"
msgstr "Ποσότητα"
#: woocommerce/cart/cart.php:39 woocommerce/cart/cart.php:120
#: woocommerce/myaccount/my-orders.php:16
msgid "Total"
msgstr "Σύνολο"
#: woocommerce/cart/cart.php:92
msgid "Available on backorder"
msgstr "Προσωρινά εκτός στοκ"
#: woocommerce/cart/cart.php:138
msgid "Coupon:"
msgstr "Κουπόνι:"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:36
msgid "Coupon code"
msgstr "Κωδικός κουπονιού:"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:40
msgid "Apply Coupon"
msgstr "Εφαρμογή Κουπονιού"
#: woocommerce/cart/cart.php:144
msgid "Update Cart"
msgstr "Ανανέωση Καλαθιού"
#: woocommerce/checkout/payment.php:35
msgid ""
"Sorry, it seems that there are no available payment methods for your state. "
"Please contact us if you require assistance or wish to make alternate "
"arrangements."
msgstr ""
"Συγγνώμη, από ότι φαίνεται, δεν υπάρχουν διαθέσιμοι τρόποι πληρωμής για την "
"περιοχή σας. Παρακαλούμε επικοινωνήστε μαζί μας εάν χρειάζεστε επιπλέον "
"βοήθεια."
#: woocommerce/checkout/payment.php:35
msgid "Please fill in your details above to see available payment methods."
msgstr ""
"Παρακαλούμε συμπληρώστε τα στοιχεία σας ώστε να εμφανιστούν οι διαθέσιμοι "
"τρόποι πληρωμής."
#: woocommerce/checkout/payment.php:42
msgid ""
"Since your browser does not support JavaScript, or it is disabled, please "
"ensure you click the <em>Update Totals</em> button before placing your "
"order. You may be charged more than the amount stated above if you fail to "
"do so."
msgstr ""
"Εφόσον ο φυλλομετρητής σας δεν υποστηρίζει JavaScript ή η JavaScript είναι "
"απενεργοποιημένη, παρακαλούμε βεβαιωθείτε ότι έχετε πατήσει το κουμπί, "
"<em>Αναέωση Συνόλου<em> προτού την τοποθέτηση της παραγγελίας σας. Μπορεί να "
"χρεωθείτε παραπάνω από το κανονικό σε περίπτωση που δεν ακολουθήσετε αυτή τη "
"συμβουλή."
#: woocommerce/checkout/payment.php:43
msgid "Update totals"
msgstr "Ανανέωση Συνόλου"
#: woocommerce/checkout/form-pay.php:30
msgid "Qty"
msgstr "Ποσότητα"
#: woocommerce/checkout/form-pay.php:31
msgid "Totals"
msgstr "Σύνολο"
#: woocommerce/checkout/form-pay.php:79
msgid ""
"Sorry, it seems that there are no available payment methods for your "
"location. Please contact us if you require assistance or wish to make "
"alternate arrangements."
msgstr ""
"Συγγνώμη, από ότι φαίνεται δεν υπάρχουν διαθέσιμοι τρόποι πληρωμής για τη "
"περιοχή σας. Παρακαλούμε επικοινωνήστε μαζί μας εάν χρειάζεστε επιπλέον "
"βοήθεια."
#: woocommerce/checkout/form-coupon.php:28
msgid "Have a coupon?"
msgstr "Έχετε κουπόνι;"
#: woocommerce/checkout/form-coupon.php:28
msgid "Click here to enter your code"
msgstr "Πατήστε εδώ για να εισάγετε τον κωδικό"
#: woocommerce/global/form-login.php:35
#: woocommerce/myaccount/form-lost-password.php:30
msgid "Username or email"
msgstr "Όνομα χρήστη ή λογαριασμός ηλεκτρονικού ταχυδρομείου"
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
#: woocommerce/myaccount/form-login.php:98
msgid "Password"
msgstr "Κωδικός"
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
#: woocommerce/myaccount/form-login.php:56
msgid "Login"
msgstr "Είσοδος"
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
msgid "Remember me"
msgstr "Να με θυμάσαι"
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
msgid "Lost your password?"
msgstr "Ξεχάσατε τον κωδικό σας;"
#: woocommerce/global/quantity-input.php:24
msgctxt "Product quantity input tooltip"
msgid "Qty"
msgstr "Ποσότητα"
#: woocommerce/myaccount/form-lost-password.php:27
msgid ""
"Lost your password? Please enter your username or email address. You will "
"receive a link to create a new password via email."
msgstr ""
"Χάσατε τον κωδικό σας; Παρακαλούμε εισάγετε το όνομα χρήστη ή την διεύθυνση "
"ηλεκτρονικού ταχυδρομείου. Θα λάβετε έναν σύνδεσμο για τη δημιουργία νέου "
"κωδικού μέσω ηλεκτρονικού ταχυδρομείου."
#: woocommerce/myaccount/form-lost-password.php:40
msgid "Reset Password"
msgstr "Ακύρωση Κωδικού"
#: woocommerce/myaccount/form-login.php:44
msgid "Username or email address"
msgstr "Όνομα χρήστη ή διεύθυνση ηλεκτρονικού ταχυδρομείου"
#: woocommerce/myaccount/form-login.php:75
#: woocommerce/myaccount/form-login.php:112
msgid "Register"
msgstr "Εγγραφή"
#: woocommerce/myaccount/form-login.php:84
msgid "Username"
msgstr "Όνομα χρήστη"
#: woocommerce/myaccount/form-login.php:91
#: woocommerce/myaccount/form-edit-account.php:40
msgid "Email address"
msgstr "Διεύθυνση ηλεκτρονικού ταχυδρομείου"
#: woocommerce/myaccount/form-login.php:105
msgid "Anti-spam"
msgstr "Προστασία κατά ανεπιθύμητης αλληλογραφίας"
#: woocommerce/myaccount/form-edit-account.php:30
msgid "First name"
msgstr "Όνομα"
#: woocommerce/myaccount/form-edit-account.php:34
msgid "Last name"
msgstr "Επώνυμο"
#: woocommerce/myaccount/form-edit-account.php:45
msgid "Password Change"
msgstr "Αλλαγή Κωδικού"
#: woocommerce/myaccount/form-edit-account.php:48
msgid "Current Password (leave blank to leave unchanged)"
msgstr "Τρέχων Κωδικός (Αφήστε το κενό αν δεν θέλετε να αλλάξει)"
#: woocommerce/myaccount/form-edit-account.php:52
msgid "New Password (leave blank to leave unchanged)"
msgstr "Νέος Κωδικός (Αφήστε το κενό αν δεν θέλετε να αλλάξει)"
#: woocommerce/myaccount/form-edit-account.php:56
msgid "Confirm New Password"
msgstr "Επιβεβαίωση Νέου Κωδικού"
#: woocommerce/myaccount/form-edit-account.php:66
msgid "Save changes"
msgstr "Αποθήκευση Αλλαγών"
#: woocommerce/myaccount/my-orders.php:13
msgid "Order"
msgstr "Παραγγελία"
#: woocommerce/myaccount/my-orders.php:14
msgid "Date"
msgstr "Ημερομηνία"
#: woocommerce/myaccount/my-orders.php:15
msgid "Status"
msgstr "Κατάσταση"
#: woocommerce/myaccount/my-orders.php:30
msgid "Recent Orders"
msgstr "Πρόσφατες Παραγγελίες"
#: woocommerce/myaccount/my-orders.php:55 woocommerce/myaccount/orders.php:51
msgctxt "hash before order number"
msgid "#"
msgstr "#"
#: woocommerce/myaccount/my-orders.php:65 woocommerce/myaccount/orders.php:61
#, php-format
msgid "%s for %s item"
msgid_plural "%s for %s items"
msgstr[0] "%s για %s προϊόν"
msgstr[1] "%s για %s προϊόντα"
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
msgid "Pay"
msgstr "Πληρωμή"
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
msgid "View"
msgstr "Εμφάνιση"
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
msgid "Cancel"
msgstr "Ακύρωση"
#: woocommerce/myaccount/orders.php:107
msgid "Previous"
msgstr "Προηγούμενο"
#: woocommerce/myaccount/orders.php:111
msgid "Next"
msgstr "Επόμενο"
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
msgid "Go Shop"
msgstr "Μεταφορά στο Κατάστημα"
#: woocommerce/myaccount/orders.php:121
msgid "No order has been made yet."
msgstr "Δεν έχει πραγματοποιηθεί παραγγελία."
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Billing Address"
msgstr "Διεύθυνση Χρέωσης"
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Shipping Address"
msgstr "Διεύθυνση Αποστολής"
#: woocommerce/myaccount/form-edit-address.php:46
msgid "Save Address"
msgstr "Αποθήκευση Διεύθυνσης"
#: woocommerce/myaccount/form-reset-password.php:27
msgid "Enter a new password below."
msgstr "Εισάγετε τον κωδικό."
#: woocommerce/myaccount/form-reset-password.php:30
msgid "New password"
msgstr "Νέος κωδικός"
#: woocommerce/myaccount/form-reset-password.php:34
msgid "Re-enter new password"
msgstr "Επιβεβαίωση νέου κωδικού"
#: woocommerce/myaccount/form-reset-password.php:47
msgid "Save"
msgstr "Αποθήκευση"
#: woocommerce/myaccount/downloads.php:59
msgid "&infin;"
msgstr "&infin;"
#: woocommerce/myaccount/downloads.php:67
msgid "Never"
msgstr "Ποτέ"
#: woocommerce/myaccount/downloads.php:75
msgid "Download"
msgstr "Μεταφόρτωση"
#: woocommerce/myaccount/downloads.php:100
msgid "No downloads available yet."
msgstr "Δεν υπάρχουν αρχεία για μεταφόρτωση."
#: woocommerce/single-product/review-rating.php:28
#, php-format
msgid "Rated %d out of 5"
msgstr "Βαθμολογήθηκε %d από 5"
#: woocommerce/single-product/review-rating.php:29
msgid "out of 5"
msgstr "από 5"
#: woocommerce/single-product/rating.php:36
#, php-format
msgid "Rated %s out of 5"
msgstr "Βαθμολογήθηκε %s από 5"
#: woocommerce/single-product/rating.php:38
#, php-format
msgid "out of %s5%s"
msgstr "από %s5%s"
#: woocommerce/single-product/rating.php:39
#, php-format
msgid "based on %s customer rating"
msgid_plural "based on %s customer ratings"
msgstr[0] "βασισμένο σε %s βαθμολογία πελάτη"
msgstr[1] "βασισμένο σε %s βαθμολογίες πελατών"
#: woocommerce/single-product/rating.php:42
#, php-format
msgid "%s customer review"
msgid_plural "%s customer reviews"
msgstr[0] "%s κριτική πελάτη"
msgstr[1] "%s κριτικές πελατών"
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
"starter theme or as a parent theme. It is up to you. Including Font Awesome "
"support, built-in widget slider and much more you need for basic websites. "
"IMPORTANT: All developer dependencies are not bundled with this install "
"file. Just download the .zip, extract it and run \"npm install\" and \"gulp "
"copy-assets\" inside the extracted /understrap folder."
msgstr ""
"Συνδυασμός του _s από την Automattic και του Bootstrap 4. Έτοιμα να "
"χρησιμοποιηθούν ως μία σωστή αρχή για το επόμενο WordPress πρότζεκτ σας . "
"Χρησιμοποιήστε το ως αρχικό ή γονικό θέμα. Είναι στο χέρι σας."
"Συνδυασμός του θέματος _s της Automatic και του Bootstrap 4. Δημιουργήθηκε "
"ώς βοήθημα για το επόμενο WordPress θέμα σας. Χρησιμοποιήστε το ως αρχικό ή "
"ως γονικό θέμα. Συμπεριλαμβάνει υποστήριξη για τα Font Awesome, καθώς και "
"διάφορα άλλα εργαλεία που χρειάζονται για νέα websites. ΣΗΜΑΝΤΙΚΟ: όλες οι "
"εξαρτήσεις που απαιτούνται για την κατασκευή, δεν συμπεριλαμβάνονται σε αυτό "
"το αρχείο. Θα πρέπει εφόσον εγκαταστήσετε αυτό το αρχείο, να τρέξετε \"npm "
"install\" και \"gulp copy-assets\" μέσα από τον φάκελο της εγκατάστασης του "
"understrap."
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Author of the theme
msgid "Holger Koenemann"
msgstr "http://understrap.com"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://understrap.com"
msgstr "http://www.holgerkoenemann.de"
#~ msgid "Sidebar"
#~ msgstr "Πλευρικό Μενου"
#~ msgid ""
#~ "Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
#~ "starting point for your next theme project and WordPress website. Use it "
#~ "as starter theme or as parent theme. It is up to you."
#~ msgstr ""
#~ "Συνδυασμός του _s από την Automattic και του Bootstrap 4. Έτοιμα να "
#~ "χρησιμοποιηθούν ως μία σωστή αρχή για το επόμενο WordPress πρότζεκτ "
#~ "σας . Χρησιμοποιήστε το ως αρχικό ή γονικό θέμα. Είναι στο χέρι σας."

BIN
languages/es_ES.mo Normal file

Binary file not shown.

309
languages/es_ES.po Normal file
View File

@ -0,0 +1,309 @@
# Loco Gettext template
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2016-11-18 14:37+0100\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2016-12-12 10:04+0000\n"
"Language-Team: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.11\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;__:1;"
"_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;_x:1,2c;"
"_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;esc_attr__:1;"
"esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;esc_html_x:1,2c;"
"comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"Last-Translator: \n"
"Language: es\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Una opinión sobre &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s Opiniones sobre &ldquo;%2$s&rdquo;"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Ver los comentarios"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Comentarios antiguos"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Comentarios más recientes &rarr;"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Los comentarios han sido cerrados."
#: ../author.php:27
msgid "About:"
msgstr "Acerca de:"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Sitio web"
#: ../author.php:34
msgid "Profile"
msgstr "Perfil"
#: ../author.php:38
msgid "Posts by"
msgstr "Publicado por"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Impulsado por %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Tema: %1$s para %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "Salir del contenido"
#: ../search.php:23
#, php-format
msgid "Search Results for: %s"
msgstr "Resultados de búsqueda: %s"
#: ../404.php:22
msgid "Oops! That page can&rsquo;t be found."
msgstr "Oups! La páginas no se puede mostrar."
#: ../404.php:27
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"No se pudo encontrar nada en esta dirección. Prueba en uno de los enlaces debajo "
"o una búsqueda ?"
#: ../404.php:37
msgid "Most Used Categories"
msgstr "Categorías más utilizadas"
#. translators: %1$s: smiley
#: ../404.php:57
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Prueba buscando en los archivos mensuales. %1$s"
#: ../searchform.php:9 ../searchform.php:13
msgid "Search"
msgstr "Buscar"
#: ../searchform.php:11
msgid "Search &hellip;"
msgstr "Buscar &hellip;"
#. Name of the template
msgid "Full Width Page"
msgstr "Página completa"
#. Name of the template
msgid "Empty Page Template"
msgstr "Plantilla de página vacía"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Panel Lateral"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Hero Slider"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Hero Static"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Footer Full"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Condifuración de Slider"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Número de diapositivas a mostrar "
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Tiempo de exposición (en ms)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Bucle del contenido del Slider"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr ", modificado el %4$s"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Publicando en %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "por %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ","
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Publicado el %1$s"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Etiquetado%1$s"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Deja un comentario"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Comentario"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% Comentarios"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Editado %s"
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "Menú principal"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "Leer más..."
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "Nombre"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "Email"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "Commentario"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: /loop-templates/content-page.php:25
msgid "Pages:"
msgstr "Páginas: "
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "No se ha encontrado nada"
#: ../loop-templates/content-none.php:24
#, php-format
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"¿Preparado para publicar tu primer post? <a href=\"%1$s\">Comenzar aquí</a>."
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Lo siento, pero no hemos encontrado nada con las palabras utilizadas. Prueba de "
"nuevo con otras palabras."
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching "
"can help."
msgstr "Al parecer no he mos podido encontrar lo que estaba buscando."
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Editar"
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid starting "
"point for your next theme project and WordPress website. Use it as starter theme "
"or as parent theme. It is up to you."
msgstr ""
"Una combinacion de tema _s (Automattic) y de Bootstrap 4. Realizado solidamente "
"Punto de partida para tus proyectos hechos en Wordpress. Utilizar Empezar como "
"padre tema de tus temas, es tu decisión."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"

BIN
languages/fr_FR.mo Normal file

Binary file not shown.

803
languages/fr_FR.po Normal file
View File

@ -0,0 +1,803 @@
# Loco Gettext template
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2016-12-20 18:30+0100\n"
"PO-Revision-Date: 2016-12-21 11:31+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.11\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
#: search.php:29
#, php-format
msgid "Search Results for: %s"
msgstr "Résultats de la recherche pour: %s"
#: header.php:34
msgid "Skip to content"
msgstr "Aller au contenu"
#: 404.php:24
msgid "Oops! That page can&rsquo;t be found."
msgstr "Oups! La page n'a pu être trouvée."
#: 404.php:31
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"Il semble qu'il n'y ait rien à cet adresse. Essayez peut-être une recherche "
"ou l'un des liens ci-dessous ?"
#: 404.php:42
msgid "Most Used Categories"
msgstr "Catégories les plus utilisées"
#. translators: %1$s: smiley
#: 404.php:62
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Jetez un œil dans les archives mensuelles. %1$s"
#: author.php:34
msgid "About:"
msgstr "A propos:"
#: author.php:42 inc/custom-comments.php:30
msgid "Website"
msgstr "Site web"
#: author.php:49
msgid "Profile"
msgstr "Profil"
#: author.php:54
msgid "Posts by"
msgstr "Publié par"
#: author.php:68
msgid "in"
msgstr "dans"
#: comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Une réflexion sur &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s réflexions sur &ldquo;%2$s&rdquo;"
#: comments.php:36 comments.php:59
msgid "Comment navigation"
msgstr "Naviguer dans les commentaires"
#: comments.php:38 comments.php:61
msgid "&larr; Older Comments"
msgstr "&larr; Commentaire moins récent"
#: comments.php:42 comments.php:65
msgid "Newer Comments &rarr;"
msgstr "Commentaire plus récent &rarr;"
#: comments.php:78
msgid "Comments are closed."
msgstr "Les commentaires sont fermés."
#: footer.php:27
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: footer.php:28
#, php-format
msgid "Proudly powered by %s"
msgstr "Propulsé par %s"
#: footer.php:31
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Thème: %1$s par %2$s."
#: footer.php:33
#, php-format
msgid "Version: %1$s"
msgstr "Version: %1$s"
#: searchform.php:10 searchform.php:16
msgid "Search"
msgstr "Rechercher"
#: searchform.php:13
msgid "Search &hellip;"
msgstr "Recherche &hellip;"
#: loop-templates/content-card.php:43 loop-templates/content-page.php:25
#: loop-templates/content.php:37 loop-templates/content-single.php:31
#: loop-templates/content-verticalpage.php:28
msgid "Pages:"
msgstr "Pages: "
#: loop-templates/content-page.php:34
#: loop-templates/content-verticalpage.php:37
msgid "Edit"
msgstr "Editer"
#: loop-templates/content-none.php:15
msgid "Nothing Found"
msgstr "Non trouvé"
#: loop-templates/content-none.php:23
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Prêt à publier votre premier article ? <a href=\"%1$s\">Démarrer ici</a>."
#: loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Désolé, rien ne correspond à votre recherche. Veuillez réessayez avec "
"d'autres termes."
#: loop-templates/content-none.php:34
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr "Il semble que nous ne puissions trouver ce que vous recherchez."
#. Name of the template
msgid "Blank Page Template"
msgstr "Modèle sans formattage"
#. Name of the template
msgid "Left and Right Sidebar Layout"
msgstr "Colonnes à gauche et à droite"
#. Name of the template
msgid "Empty Page Template"
msgstr "Modèle de page vide"
#. Name of the template
msgid "Full Width Page"
msgstr "Page pleine largeur"
#. Name of the template
msgid "Left Sidebar Layout"
msgstr "Colonne à gauche"
#. Name of the template
msgid "Vertical One Page"
msgstr "Page verticale unique"
#: inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr " modifié le %4$s"
#: inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Publié le %s"
#: inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "par %s"
#. translators: used between list items, there is a space after the comma
#: inc/template-tags.php:51 inc/template-tags.php:57
msgid ", "
msgstr ","
# dans une catégorie
#: inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Publié dans %1$s"
#: inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Taggé %1$s"
#: inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Réagir"
#: inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Commentaire"
#: inc/template-tags.php:65
msgid "% Comments"
msgstr "% Commentaires"
#. translators: %s: Name of current post
#: inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Editer %s"
#: inc/template-tags.php:143
msgid "Post navigation"
msgstr "Navigation"
#: inc/template-tags.php:148
msgctxt "Previous post link"
msgid "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
msgstr "<i class=\"fa fa-angle-left\"></i>&nbsp;%title"
#: inc/template-tags.php:151
msgctxt "Next post link"
msgid "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
msgstr "%title&nbsp;<i class=\"fa fa-angle-right\"></i>"
#: inc/setup.php:51
msgid "Primary Menu"
msgstr "Menu principal"
#: inc/setup.php:122
msgid "Read More..."
msgstr "Lire la suite..."
#: inc/widgets.php:14
msgid "Right Sidebar"
msgstr "Colonne droite"
#: inc/widgets.php:24
msgid "Left Sidebar"
msgstr "Colonne gauche"
#: inc/widgets.php:34
msgid "Hero Slider"
msgstr "Héro dynamique"
#: inc/widgets.php:44
msgid "Hero Static"
msgstr "Héro statique"
#: inc/widgets.php:54
msgid "Footer Full"
msgstr "Pied pleine page"
#: inc/custom-comments.php:24
msgid "Name"
msgstr "Nom"
#: inc/custom-comments.php:27
msgid "Email"
msgstr "Courriel"
#: inc/custom-comments.php:49
msgctxt "noun"
msgid "Comment"
msgstr "Commentaire"
#: inc/customizer.php:36
msgid "Slider Settings"
msgstr "Paramètres du Slider"
#: inc/customizer.php:45
msgid "Number of slides displaying at once"
msgstr "Nombre de slides à afficher "
#: inc/customizer.php:57
msgid "Slider Time (in ms)"
msgstr "Temps d'exposition (en ms)"
#: inc/customizer.php:69
msgid "Loop Slider Content"
msgstr "Boucle sur le contenu du Slider"
#: inc/customizer.php:81
msgid "Theme Layout Settings"
msgstr "Paramètres du layout"
#: inc/customizer.php:83
msgid "Container width and sidebar defaults"
msgstr "Paramètrage du conteneur"
#: inc/customizer.php:98
msgid "Container Width"
msgstr "Largeur du conteneur"
#: inc/customizer.php:99
msgid "Choose between Bootstrap's container and container-fluid"
msgstr "Choisir entre le conteneur Bootstrap ou 'container-fluid'"
#: inc/customizer.php:104
msgid "Fixed width container"
msgstr "Conteneur de largeur fixe"
#: inc/customizer.php:105
msgid "Full width container"
msgstr "Conteneur de pleine largeur"
#: inc/customizer.php:122
msgid "Sidebar Positioning"
msgstr "Positionnement des sidebars"
#: inc/customizer.php:123
msgid "Set sidebar's position. Can either be: right, left, both or none"
msgstr "Positionner la sidebar : à gauche, à droite, des 2 côtés, ou aucune"
#: inc/customizer.php:129
msgid "Right sidebar"
msgstr "Sidebar à droite"
#: inc/customizer.php:130
msgid "Left sidebar"
msgstr "Sidebar à gauche"
#: inc/customizer.php:131
msgid "Left & Right sidebars"
msgstr "Sidebar gauche et droite"
#: inc/customizer.php:132
msgid "No sidebar"
msgstr "Pas de sidebar"
#: inc/customizer.php:150
msgid "Posts Index Style"
msgstr "Style de la liste d'articles"
#: inc/customizer.php:151
msgid "Choose how to display latest posts"
msgstr "Comment afficher les posts récents"
#: inc/customizer.php:156
msgid "Default"
msgstr "Défaut"
#: inc/customizer.php:157
msgid "Masonry"
msgstr "Masonry"
#: inc/customizer.php:158
msgid "Grid"
msgstr "Grille"
#: inc/customizer.php:187
msgid "Grid Post Columns"
msgstr "Grille en colonne"
#: inc/customizer.php:188
msgid "Choose how many columns to use"
msgstr "Combien de colonnes"
#: woocommerce/cart/proceed-to-checkout-button.php:27
msgid "Proceed to Checkout"
msgstr "Finaliser la commande"
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
msgid "Remove this item"
msgstr "Enlever cet article"
#: woocommerce/cart/mini-cart.php:72
msgid "No products in the cart."
msgstr "Le panier est vide"
#: woocommerce/cart/mini-cart.php:80
msgid "Subtotal"
msgstr "Sous-total"
#: woocommerce/cart/mini-cart.php:85
msgid "View Cart"
msgstr "Voir le panier"
#: woocommerce/cart/mini-cart.php:86
msgid "Checkout"
msgstr "Commander"
#: woocommerce/cart/cart-empty.php:28
msgid "Your cart is currently empty."
msgstr "Votre panier est vide."
#: woocommerce/cart/cart-empty.php:36
msgid "Return To Shop"
msgstr "Poursuivre ses achats"
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
#: woocommerce/checkout/form-pay.php:29
msgid "Product"
msgstr "Produit"
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
msgid "Price"
msgstr "Prix"
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
msgid "Quantity"
msgstr "Quantité"
#: woocommerce/cart/cart.php:39 woocommerce/cart/cart.php:120
#: woocommerce/myaccount/my-orders.php:16
msgid "Total"
msgstr "Total"
#: woocommerce/cart/cart.php:92
msgid "Available on backorder"
msgstr "Disponible sur commande"
#: woocommerce/cart/cart.php:138
msgid "Coupon:"
msgstr "Promotion:"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:36
msgid "Coupon code"
msgstr "Code promotionnel"
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:40
msgid "Apply Coupon"
msgstr "Appliquer la promotion"
#: woocommerce/cart/cart.php:144
msgid "Update Cart"
msgstr "Rafraîchir le panier"
#: woocommerce/checkout/payment.php:35
msgid ""
"Sorry, it seems that there are no available payment methods for your state. "
"Please contact us if you require assistance or wish to make alternate "
"arrangements."
msgstr ""
"Il semblerait qu'il n'y ait pas de moyen de paiement disponible pour votre "
"pays. Contactez-nous si vous avez besoin d'aide ou si vous souhaitez un "
"autre arrangement."
#: woocommerce/checkout/payment.php:35
msgid "Please fill in your details above to see available payment methods."
msgstr ""
"Veuillez entrer vos coordonnées ci-dessus pour voir les modes de paiement "
"disponibles."
#: woocommerce/checkout/payment.php:42
msgid ""
"Since your browser does not support JavaScript, or it is disabled, please "
"ensure you click the <em>Update Totals</em> button before placing your "
"order. You may be charged more than the amount stated above if you fail to "
"do so."
msgstr ""
"Votre navigateur ne prend pas en charge JavaScript, veuillez cliquer sur le "
"bouton <em>Rafraîchir les totaux</ em> avant de passer votre commande. Vous "
"pourriez sinon être facturé plus que le montant indiqué ci-dessus."
#: woocommerce/checkout/payment.php:43
msgid "Update totals"
msgstr "Rafraîchir le total"
#: woocommerce/checkout/form-pay.php:30
msgid "Qty"
msgstr "Qté"
#: woocommerce/checkout/form-pay.php:31
msgid "Totals"
msgstr "Totaux"
#: woocommerce/checkout/form-pay.php:79
msgid ""
"Sorry, it seems that there are no available payment methods for your "
"location. Please contact us if you require assistance or wish to make "
"alternate arrangements."
msgstr ""
"Il semblerait qu'il n'existe pas de méthodes de paiement disponibles pour "
"votre pays. Veuillez nous contacter si vous avez besoin d'aide ou si vous "
"souhaitez prendre d'autres dispositions."
#: woocommerce/checkout/form-coupon.php:28
msgid "Have a coupon?"
msgstr "Avez-vous un code promotionnel ?"
#: woocommerce/checkout/form-coupon.php:28
msgid "Click here to enter your code"
msgstr "Entrez ici votre code de promotion"
#: woocommerce/global/form-login.php:35
#: woocommerce/myaccount/form-lost-password.php:30
msgid "Username or email"
msgstr "Nom d'utilisateur ou courriel"
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
#: woocommerce/myaccount/form-login.php:98
msgid "Password"
msgstr "Mot de passe"
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
#: woocommerce/myaccount/form-login.php:56
msgid "Login"
msgstr "Se connecter"
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
msgid "Remember me"
msgstr "Se souvenir de moi"
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
msgid "Lost your password?"
msgstr "Perdu votre mot de passe ?"
#: woocommerce/global/quantity-input.php:24
msgctxt "Product quantity input tooltip"
msgid "Qty"
msgstr "Qté"
#: woocommerce/myaccount/form-lost-password.php:27
msgid ""
"Lost your password? Please enter your username or email address. You will "
"receive a link to create a new password via email."
msgstr ""
"Vous avez perdu votre mot de passe ? Entrez ici votre nom d'utilisateur ou "
"votre adresse de courriel. Vous allez recevoir par mail un lien pour "
"renouveler votre mot de passe."
#: woocommerce/myaccount/form-lost-password.php:40
msgid "Reset Password"
msgstr "Réinitialiser le mot de passe"
#: woocommerce/myaccount/form-login.php:44
msgid "Username or email address"
msgstr "Nom d'utilisateur ou adresse courriel"
#: woocommerce/myaccount/form-login.php:75
#: woocommerce/myaccount/form-login.php:112
msgid "Register"
msgstr "S'enregistrer"
#: woocommerce/myaccount/form-login.php:84
msgid "Username"
msgstr "Nom d'utilisateur"
#: woocommerce/myaccount/form-login.php:91
#: woocommerce/myaccount/form-edit-account.php:40
msgid "Email address"
msgstr "Adresse courriel"
#: woocommerce/myaccount/form-login.php:105
msgid "Anti-spam"
msgstr "Anti-spam"
#: woocommerce/myaccount/form-edit-account.php:30
msgid "First name"
msgstr "Prénom"
#: woocommerce/myaccount/form-edit-account.php:34
msgid "Last name"
msgstr "Nom"
#: woocommerce/myaccount/form-edit-account.php:45
msgid "Password Change"
msgstr "Changer de mot de passe"
#: woocommerce/myaccount/form-edit-account.php:48
msgid "Current Password (leave blank to leave unchanged)"
msgstr "Mot de passe actuel (laisser vide pour ne rien changer)"
#: woocommerce/myaccount/form-edit-account.php:52
msgid "New Password (leave blank to leave unchanged)"
msgstr "Nouveau mot de passe (laisser vide pour ne rien changer)"
#: woocommerce/myaccount/form-edit-account.php:56
msgid "Confirm New Password"
msgstr "Confirmer le nouveau mot de passe"
#: woocommerce/myaccount/form-edit-account.php:66
msgid "Save changes"
msgstr "Sauver les changements"
#: woocommerce/myaccount/my-orders.php:13
msgid "Order"
msgstr "Commande"
#: woocommerce/myaccount/my-orders.php:14
msgid "Date"
msgstr "Date"
#: woocommerce/myaccount/my-orders.php:15
msgid "Status"
msgstr "Statut"
#: woocommerce/myaccount/my-orders.php:30
msgid "Recent Orders"
msgstr "Dernières commandes"
#: woocommerce/myaccount/my-orders.php:55 woocommerce/myaccount/orders.php:51
msgctxt "hash before order number"
msgid "#"
msgstr "#"
#: woocommerce/myaccount/my-orders.php:65 woocommerce/myaccount/orders.php:61
#, php-format
msgid "%s for %s item"
msgid_plural "%s for %s items"
msgstr[0] "%s pour %s article"
msgstr[1] "%s pour %s articles"
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
msgid "Pay"
msgstr "Payer"
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
msgid "View"
msgstr "Voir"
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
msgid "Cancel"
msgstr "Annuler"
#: woocommerce/myaccount/orders.php:107
msgid "Previous"
msgstr "Précédent"
#: woocommerce/myaccount/orders.php:111
msgid "Next"
msgstr "Prochain"
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
msgid "Go Shop"
msgstr "Poursuivre les achats"
#: woocommerce/myaccount/orders.php:121
msgid "No order has been made yet."
msgstr "Il n'y a pas encore de commande."
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Billing Address"
msgstr "Adresse de facturation"
#: woocommerce/myaccount/form-edit-address.php:23
msgid "Shipping Address"
msgstr "Adresse d'expédition"
#: woocommerce/myaccount/form-edit-address.php:46
msgid "Save Address"
msgstr "Sauver l'adresse"
#: woocommerce/myaccount/form-reset-password.php:27
msgid "Enter a new password below."
msgstr "Entrer un nouveau mot de passe ci-dessous."
#: woocommerce/myaccount/form-reset-password.php:30
msgid "New password"
msgstr "Nouveau mot de passe"
#: woocommerce/myaccount/form-reset-password.php:34
msgid "Re-enter new password"
msgstr "Saisir à nouveau le mot de passe "
#: woocommerce/myaccount/form-reset-password.php:47
msgid "Save"
msgstr "Sauver"
#: woocommerce/myaccount/downloads.php:59
msgid "&infin;"
msgstr "&infin;"
#: woocommerce/myaccount/downloads.php:67
msgid "Never"
msgstr "Jamais"
#: woocommerce/myaccount/downloads.php:75
msgid "Download"
msgstr "Télécharger"
#: woocommerce/myaccount/downloads.php:100
msgid "No downloads available yet."
msgstr "Téléchargements encore indisponibles."
#: woocommerce/single-product/review-rating.php:28
#, php-format
msgid "Rated %d out of 5"
msgstr ""
#: woocommerce/single-product/review-rating.php:29
msgid "out of 5"
msgstr ""
#: woocommerce/single-product/rating.php:36
#, php-format
msgid "Rated %s out of 5"
msgstr ""
#: woocommerce/single-product/rating.php:38
#, php-format
msgid "out of %s5%s"
msgstr ""
#: woocommerce/single-product/rating.php:39
#, php-format
msgid "based on %s customer rating"
msgid_plural "based on %s customer ratings"
msgstr[0] ""
msgstr[1] ""
#: woocommerce/single-product/rating.php:42
#, php-format
msgid "%s customer review"
msgid_plural "%s customer reviews"
msgstr[0] ""
msgstr[1] ""
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as a parent theme. It is up to you. Including Font Awesome "
"support, built-in widget slider and much more you need for basic websites. "
"IMPORTANT: All developer dependencies are not bundled with this install "
"file. Just download the .zip, extract it and run \"npm install\" and \"gulp "
"copy-assets\" inside the extracted /understrap folder."
msgstr ""
"Une combinaison du thème _s d'Automattic et de Bootstrap 4. Un excellent "
"point de départ pour votre prochain projet de thème et de site Web de "
"WordPress. Utilisez-le comme thème de démarrage ou comme thème parent. A "
"vous de décider. Inclus Font-Awesome, des widgets intégrés et tout ce dont "
"vous avez besoin pour votre site. IMPORTANT: les dépendances des "
"développeurs ne sont pas livrées avec ce fichier d'installation. Il suffit "
"de télécharger le fichier .zip, de l'extraire et d'exécuter \"npm install\" "
"et \"gulp copy-assets\" dans le dossier extract / understrap."
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"
#~ msgid "Sidebar"
#~ msgstr "Sidebar"
#~ msgid ""
#~ "Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
#~ "starting point for your next theme project and WordPress website. Use it "
#~ "as starter theme or as parent theme. It is up to you."
#~ msgstr ""
#~ "Une combinaison du thème _s (Automattic) et de Bootstrap 4. Un solide "
#~ "point de départ pour tout vos projets de site et de thèmes WordPress. A "
#~ "utiliser comme thème de départ ou comme thème parent."

BIN
languages/it_IT.mo Normal file

Binary file not shown.

310
languages/it_IT.po Normal file
View File

@ -0,0 +1,310 @@
# Loco Gettext template
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2015-09-01 21:23+0200\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2016-12-10 11:24+0100\n"
"Language-Team: \n"
"Language: it_IT\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.7.4\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"Last-Translator: Max Guglielmino <info@maxguglielmino.com>\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Un commento su &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s commenti su &ldquo;%2$s&rdquo;"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Navigazione commenti"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Commenti meno recenti"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Commenti più recenti &rarr;"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Commenti disabilitati."
#: ../author.php:27
msgid "About:"
msgstr "Informazioni:"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Sito Web"
#: ../author.php:34
msgid "Profile"
msgstr "Profilo"
#: ../author.php:38
msgid "Posts by"
msgstr "Articoli di"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Orgogliosamente realizzato con %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Tema: %1$s di %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "Vai al contenuto"
#: ../search.php:23
#, php-format
msgid "Search Results for: %s"
msgstr "Risultati della ricerca per: %s"
#: ../404.php:22
msgid "Oops! That page can&rsquo;t be found."
msgstr "Oops! Quella pagina non può essere trovata."
#: ../404.php:27
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"Sembra che nulla sia stato trovato a questo indirizzo. Magari prova uno dei "
"link sotto o una ricerca?"
#: ../404.php:37
msgid "Most Used Categories"
msgstr "Categorie più utilizzate"
#. translators: %1$s: smiley
#: ../404.php:57
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Prova a cercare tra gli archivi mensili. %1$s"
#: ../searchform.php:9 ../searchform.php:13
msgid "Search"
msgstr "Cerca"
#: ../searchform.php:11
msgid "Search &hellip;"
msgstr "Cerca &hellip;"
#. Name of the template
msgid "Full Width Page"
msgstr "Pagina a Larghezza Intera"
#. Name of the template
msgid "Empty Page Template"
msgstr "Template Pagina Vuota"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Barra Laterale"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Blocco Iniziale con Carosello "
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Blocco Iniziale Statico"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Piè di pagina Larghezza Intera"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Impostazioni Carosello"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Numero di diapositive da mostrare subito"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Intervallo tra le diapositive (in ms)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Carosello a Ciclo Continuo"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr " Modificato %4$s"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Pubblicato il %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "da %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ", "
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Pubblicato in %1$s"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Etichettato %1$s"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Commenta"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Commento"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% Commenti"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Modifica %s"
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "Menù Principale"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "Leggi tutto..."
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "Nome"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "Email"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "Commento"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: /loop-templates/content-page.php:25
msgid "Pages:"
msgstr "Pagine:"
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "Nessun Risultato"
#: ../loop-templates/content-none.php:24
#, php-format
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Pronto a pubblicare il tuo primo articolo? <a href=\"%1$s\">Inizia qui</a>."
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Spiacente, ma non ci sono riscontri con i tuoi termini di ricerca. Per favore "
"riprova con altre parole chiavi."
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching "
"can help."
msgstr ""
"Sembra che non troviamo quello che cerchi. Forse una ricerca può aiutare."
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Modifica"
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"Combinazione del tema _s di Automattic con Bootstrap 4. Realizzato come "
"solido punto di partenza per il tuo prossimo progetto di tema e sito "
"WordPress. Da usare come tema iniziale o tema genitore. Decidi tu."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"

BIN
languages/ko_KR.mo Normal file

Binary file not shown.

303
languages/ko_KR.po Normal file
View File

@ -0,0 +1,303 @@
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2015-09-01 21:23+0200\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2016-11-06 15:16+0000\n"
"Last-Translator: idpokute <mike.sayhi@gmail.com>\n"
"Language-Team: Korean\n"
"Language: ko-KR\n"
"Plural-Forms: nplurals=1; plural=0\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Loco - https://localise.biz/\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "%2$s 의 댓글"
msgstr[1] ""
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "댓글 네비게이션"
#: ../author.php:27
msgid "About:"
msgstr "About:"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Proudly powered by %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "테마: %1$s by %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "본문가기"
#: ../search.php:23
#, php-format
msgid "Search Results for: %s"
msgstr "%s 검색결과"
#: ../404.php:27
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr "검색 결과가 없습니다. 아래의 링크 중의 하나, 혹은 검색을 이용해주세요."
#: ../404.php:37
msgid "Most Used Categories"
msgstr "자주 사용된 카테고리"
#. translators: %1$s: smiley
#: ../404.php:57
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "월별 아카이브를 "
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "사이드바"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Hero 슬라이더"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Hero Static"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "풋터 Full"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "슬라이더 설정"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "한번에 보여줄 슬라이드 갯수"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "슬라이더 타임 (밀리세컨드)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "슬라이드 반복"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr " %4$s 수정됨"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "작성일 %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "by %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ","
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "%1$s 에 게재"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "태그된 %1$s"
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr "죄송합니다만 일치하는 검색 Term이 없습니다. 다른 키워드를 사용해서 다시 시도해주세요."
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr "원하시는 것을 찾을 수가 없습니다. 검색이 도움이 될 수도 있습니다."
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"Automattic 사의 _s 테마와 부트스트랩 4의 결합. 당신의 다음 테마 제작과 워드프레스 사이트 제작의 시작점을 위해 "
"제작되었습니다. 스타터 테마나 부모 테마로 사용하세요."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "<이전 댓글"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "신규 댓글>"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "댓글 기능이 꺼져있습니다."
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "웹사이트"
#: ../author.php:34
msgid "Profile"
msgstr "프로필"
#: ../author.php:38
msgid "Posts by"
msgstr "작성자 :"
#: ../404.php:22
msgid "Oops! That page can&rsquo;t be found."
msgstr "페이지를 찾을 수 없습니다."
#: ../searchform.php:9 ../searchform.php:13
msgid "Search"
msgstr "검색"
#: ../searchform.php:11
msgid "Search &hellip;"
msgstr "검색 ..."
#. Name of the template
msgid "Full Width Page"
msgstr "너비 페이지"
#. Name of the template
msgid "Empty Page Template"
msgstr "빈 페이지 템플릿"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "댓글 남기기"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 댓글"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% 댓글"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "%s 수정 "
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "주 메뉴"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "더보기..."
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "이름"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "이메일"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "댓글"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: loop-templates/content-page.php:25
msgid "Pages:"
msgstr "페이지:"
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "찾을수가 없습니다"
#: ../loop-templates/content-none.php:24
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr "첫 포스트를 등록할 준비가 되었나요? <a href=\"%1$s\">작성하기</a>"
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "수정"

BIN
languages/nl_NL.mo Normal file

Binary file not shown.

279
languages/nl_NL.po Normal file
View File

@ -0,0 +1,279 @@
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-11-23 08:05+0000\n"
"PO-Revision-Date: 2016-11-23 20:11+0000\n"
"Last-Translator: Sander\n"
"Language-Team: Dutch (Netherlands)\n"
"Language: nl-NL\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Loco https://localise.biz\n"
"X-Loco-Source-Locale: en-NL\n"
"X-Loco-Project-Id: 19218\n"
"X-Loco-Api-Version: 1.0.15 20161122-1"
#: ../comments.php:28 loco:58356fd352e1a1670d8b4567
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "Een reactie op &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s reacties op &ldquo;%2$s&rdquo;"
#: ../comments.php:35 ../comments.php:56 loco:58356fd352e1a1670d8b4569
msgid "Comment navigation"
msgstr "Reactienavigatie"
#: ../comments.php:37 ../comments.php:58 loco:58356fd352e1a1670d8b456a
msgid "&larr; Older Comments"
msgstr "&larr; Oudere reacties"
#: ../comments.php:40 ../comments.php:61 loco:58356fd352e1a1670d8b456b
msgid "Newer Comments &rarr;"
msgstr "Nieuwere reacties &rarr;"
#: ../comments.php:72 loco:58356fd352e1a1670d8b456c
msgid "Comments are closed."
msgstr "Reacties zijn gesloten."
#: ../author.php:27 loco:58356fd352e1a1670d8b456d
msgid "About:"
msgstr "Over:"
#: ../author.php:32 ../inc/custom-comments.php:16 loco:58356fd352e1a1670d8b456e
msgid "Website"
msgstr "Website"
#: ../author.php:34 loco:58356fd352e1a1670d8b456f
msgid "Profile"
msgstr "Profiel"
#: ../author.php:38 loco:58356fd352e1a1670d8b4570
msgid "Posts by"
msgstr "Berichten van"
#: ../footer.php:24 loco:58356fd352e1a1670d8b4571
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24 loco:58356fd352e1a1670d8b4572
msgid "Proudly powered by %s"
msgstr "Met trots ondersteund door %s"
#: ../footer.php:26 loco:58356fd352e1a1670d8b4573
msgid "Theme: %1$s by %2$s."
msgstr "Thema: %1$s van %2$s."
#: ../header.php:30 loco:58356fd352e1a1670d8b4574
msgid "Skip to content"
msgstr "Ga naar inhoud"
#: ../search.php:23 loco:58356fd352e1a1670d8b4575
msgid "Search Results for: %s"
msgstr "Zoekresultaten voor: %s"
#: ../404.php:22 loco:58356fd352e1a1670d8b4576
msgid "Oops! That page can&rsquo;t be found."
msgstr "Oeps! Deze pagina kan niet worden gevonden."
#: ../404.php:27 loco:58356fd352e1a1670d8b4577
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"Het lijkt erop dat er niets gevonden is op deze locatie. Probeer anders "
"&#233;&#233;n van de onderstaande links of een zoekopdracht? "
#: ../404.php:37 loco:58356fd352e1a1670d8b4578
msgid "Most Used Categories"
msgstr "Meestgebruikte categorie&#235;n"
#. translators: %1$s: smiley
#: ../404.php:57 loco:58356fd352e1a1670d8b4579
msgid "Try looking in the monthly archives. %1$s"
msgstr "Wellicht kun je kijken in de maandelijkse archieven. %1$s"
#: ../searchform.php:9 ../searchform.php:13 loco:58356fd352e1a1670d8b457a
msgid "Search"
msgstr "Zoek"
#: ../searchform.php:11 loco:58356fd352e1a1670d8b457b
msgid "Search &hellip;"
msgstr "Zoek &hellip;"
#. Name of the template
#: loco:58356fd352e1a1670d8b457c
msgid "Full Width Page"
msgstr "Volledige breedte"
#. Name of the template
#: loco:58356fd352e1a1670d8b457d
msgid "Empty Page Template"
msgstr "Leeg paginasjabloon"
#: ../inc/widgets.php:10 loco:58356fd352e1a1670d8b457e
msgid "Sidebar"
msgstr "Sidebar"
#: ../inc/widgets.php:20 loco:58356fd352e1a1670d8b457f
msgid "Hero Slider"
msgstr "Hero Slider"
#: ../inc/widgets.php:30 loco:58356fd352e1a1670d8b4580
msgid "Hero Static"
msgstr "Hero Static"
#: ../inc/widgets.php:40 loco:58356fd352e1a1670d8b4581
msgid "Footer Full"
msgstr "Footer (volledige breedte)"
#: ../inc/customizer.php:24 loco:58356fd352e1a1670d8b4582
msgid "Slider Settings"
msgstr "Sliderinstellingen"
#: ../inc/customizer.php:33 loco:58356fd352e1a1670d8b4583
msgid "Number of slides displaying at once"
msgstr "Aantal gelijktijdig vertoonde slides"
#: ../inc/customizer.php:45 loco:58356fd352e1a1670d8b4584
msgid "Slider Time (in ms)"
msgstr "Slidertijd (in ms)"
#: ../inc/customizer.php:57 loco:58356fd352e1a1670d8b4585
msgid "Loop Slider Content"
msgstr "Sliderinhoud herhalen"
#: ../inc/template-tags.php:18 loco:58356fd352e1a1670d8b4586
msgid " Edited %4$s"
msgstr " Bewerkt op %4$s"
#: ../inc/template-tags.php:29 loco:58356fd352e1a1670d8b4587
msgctxt "post date"
msgid "Posted on %s"
msgstr "Geplaatst op %s"
#: ../inc/template-tags.php:34 loco:58356fd352e1a1670d8b4588
msgctxt "post author"
msgid "by %s"
msgstr "door %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
#: loco:58356fd352e1a1670d8b4589
msgid ", "
msgstr ", "
#: ../inc/template-tags.php:53 loco:58356fd352e1a1670d8b458a
msgid "Posted in %1$s"
msgstr "Geplaatst in %1$s"
#: ../inc/template-tags.php:59 loco:58356fd352e1a1670d8b458b
msgid "Tagged %1$s"
msgstr "%1$s getagd"
#: ../inc/template-tags.php:65 loco:58356fd352e1a1670d8b458c
msgid "Leave a comment"
msgstr "Plaats een reactie"
#: ../inc/template-tags.php:65 loco:58356fd352e1a1670d8b458d
msgid "1 Comment"
msgstr "1 Reactie"
#: ../inc/template-tags.php:65 loco:58356fd352e1a1670d8b458e
msgid "% Comments"
msgstr "% Reacties"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72 loco:58356fd352e1a1670d8b458f
msgid "Edit %s"
msgstr "Bewerk %s"
#: ../inc/setup.php:48 loco:58356fd352e1a1670d8b4590
msgid "Primary Menu"
msgstr "Hoofdmenu"
#: ../inc/setup.php:98 loco:58356fd352e1a1670d8b4591
msgid "Read More..."
msgstr "Lees verder..."
#: ../inc/custom-comments.php:12 loco:58356fd352e1a1670d8b4592
msgid "Name"
msgstr "Naam"
#: ../inc/custom-comments.php:14 loco:58356fd352e1a1670d8b4593
msgid "Email"
msgstr "Email"
#: ../inc/custom-comments.php:25 loco:58356fd352e1a1670d8b4594
msgctxt "noun"
msgid "Comment"
msgstr "Reactie"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: loop-templates/content-page.php:25 loco:58356fd352e1a1670d8b4595
msgid "Pages:"
msgstr "Pagina's:"
#: ../loop-templates/content-none.php:16 loco:58356fd352e1a1670d8b4596
msgid "Nothing Found"
msgstr "Niets gevonden"
#: ../loop-templates/content-none.php:24 loco:58356fd352e1a1670d8b4597
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Klaar om je eerste bericht te plaatsen? <a href=\"%1$s\">Begin hier</a>."
#: ../loop-templates/content-none.php:28 loco:58356fd352e1a1670d8b4598
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Helaas, er waren geen overeenkomsten met jouw zoekopdracht. Probeer het "
"opnieuw met enkele andere zoekwoorden."
#: ../loop-templates/content-none.php:33 loco:58356fd352e1a1670d8b4599
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr ""
"Het lijkt erop dat wij niet kunnen vinden wat jij zoekt. Wellicht dat de "
"zoekfunctie kan helpen."
#: ../loop-templates/content-page.php:34 loco:58356fd352e1a1670d8b459a
msgid "Edit"
msgstr "Bewerk"
#. Name of the theme
#: loco:58356fd352e1a1670d8b459b
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
#: loco:58356fd352e1a1670d8b459c
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
#: loco:58356fd352e1a1670d8b459d
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"Een combinatie van het _s thema van Automattic en Bootstrap 4. Ontwikkeld "
"als startpunt voor het maken van jouw volgende thema en WordPress website. "
"Gebruik het als starter thema of parent thema. De keuze is aan jou."
#. Author of the theme
#: loco:58356fd352e1a1670d8b459e
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
#: loco:58356fd352e1a1670d8b459f
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"

BIN
languages/ru_RU.mo Normal file

Binary file not shown.

313
languages/ru_RU.po Normal file
View File

@ -0,0 +1,313 @@
# Loco Gettext template
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2016-11-23 20:21+0200\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"PO-Revision-Date: 2016-11-23 21:13+0200\n"
"Language-Team: \n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.11\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"Last-Translator: Алексей Корнеев <alexi@vfemail.net>\n"
"Language: ru_RU\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "&ldquo;%2$s&rdquo;: %1$s комментарий"
msgstr[1] "&ldquo;%2$s&rdquo;: %1$s комментария"
msgstr[2] "&ldquo;%2$s&rdquo;: %1$s комментариев"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Навигация по комментариям"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Старые комментарии"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Новые комментарии &rarr;"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Комментарии закрыты."
#: ../author.php:27
msgid "About:"
msgstr "О:"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Сайт"
#: ../author.php:34
msgid "Profile"
msgstr "Профиль"
#: ../author.php:38
msgid "Posts by"
msgstr "Опубликовано"
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Сайт работает на %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "Тема: %1$s by %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "Перейти к содержанию"
#: ../search.php:23
#, php-format
msgid "Search Results for: %s"
msgstr "Результаты поиска для: %s"
#: ../404.php:22
msgid "Oops! That page can&rsquo;t be found."
msgstr "Ой! Эта страница не найдена!"
#: ../404.php:27
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"По данному адресу ничего не найдено. Попробуйте воспользоваться поиском."
#: ../404.php:37
msgid "Most Used Categories"
msgstr "Наиболее используемые категории"
#. translators: %1$s: smiley
#: ../404.php:57
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Попробуйте поискать в архивах за прошлые месяцы. %1$s"
#: ../searchform.php:9 ../searchform.php:13
msgid "Search"
msgstr "Поиск"
#: ../searchform.php:11
msgid "Search &hellip;"
msgstr "Поиск %s"
#. Name of the template
msgid "Full Width Page"
msgstr "Страница на всю ширину"
#. Name of the template
msgid "Empty Page Template"
msgstr "Пустой шаблон страницы"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Боковая панель"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Hero Слайдер"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Hero Статик"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Подвал сайта"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Настройки слайдера"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Кол-во одновременно показываемых слайдов"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Время показа слайда (в мс)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Циклический показ слайдов"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr "Отредактировано %4$s"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Опубликовано %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "%s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ", "
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Опубликовано в %1$s"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Помечено %1$s"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Оставить комментарий"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 комментарий"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% комментариев"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Править %s"
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "Главное меню"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "Читать далее..."
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "Имя"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "Эл. почта"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "Комментарий"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: /loop-templates/content-page.php:25
msgid "Pages:"
msgstr "Страницы:"
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "Ничего не найдено"
#: ../loop-templates/content-none.php:24
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr ""
"Готовы опубликовать свою первую запись? <a href=\"%1$s\">Начните отсюда</a>."
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Извините, по вашему запросу ничего не найдено. Попробуйте другие ключевые "
"слова."
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr ""
"Запрошенную информацию найти не удалось. Возможно, будет полезен поиск по "
"сайту."
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Редактировать"
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"Сочетание темы _s от Automatic и Bootstrap 4. Надежный базис для создания "
"ваших собственных тем и вебсайтов на WordPress. Используйте как основную или "
"как родительскую тему. Все в ваших руках."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"

BIN
languages/sv_SE.mo Normal file

Binary file not shown.

397
languages/sv_SE.po Normal file
View File

@ -0,0 +1,397 @@
msgid ""
msgstr ""
"Project-Id-Version: understrap\n"
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
"POT-Creation-Date: 2016-11-23 20:21+0200\n"
"PO-Revision-Date: 2017-02-20 13:19+0000\n"
"Last-Translator: Filip Wessman <filip@effektid.com>\n"
"Language-Team: Swedish (Swedish)\n"
"Language: sv-SE\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Loco-Source-Locale: sv_SE\n"
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Loco - https://localise.biz/\n"
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
"X-Poedit-Basepath: ..\n"
"X-Poedit-SearchPath-0: footer.php\n"
"X-Poedit-SearchPath-1: header.php\n"
"X-Poedit-SearchPath-2: index.php\n"
"X-Poedit-SearchPath-3: statichero.php\n"
"X-Poedit-SearchPath-4: 404.php\n"
"X-Poedit-SearchPath-5: archive.php\n"
"X-Poedit-SearchPath-6: search.php\n"
"X-Poedit-SearchPath-7: sticky.php\n"
"X-Poedit-SearchPath-8: single.php\n"
"X-Poedit-SearchPath-9: sidebar.php\n"
"X-Poedit-SearchPath-10: comment-form.php\n"
"X-Poedit-SearchPath-11: comments.php\n"
"X-Poedit-SearchPath-12: content-none.php\n"
"X-Poedit-SearchPath-13: content-page.php\n"
"X-Poedit-SearchPath-14: content-search.php\n"
"X-Poedit-SearchPath-15: content-single.php\n"
"X-Poedit-SearchPath-16: content.php\n"
"X-Poedit-SearchPath-17: hero.php\n"
"X-Poedit-SearchPath-18: page.php\n"
"X-Poedit-SearchPath-19: functions.php\n"
"X-Poedit-SearchPath-20: page-templates\n"
"X-Poedit-SearchPath-21: inc\n"
"X-Loco-Parser: loco_parse_po"
#: ../comments.php:28
#, php-format
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "En tanke kring &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s tankar kring &ldquo;%2$s&rdquo;"
msgstr[2] "&ldquo;%2$s&rdquo;: %1$s комментариев"
#: ../comments.php:35 ../comments.php:56
msgid "Comment navigation"
msgstr "Kommentars navigering"
#: ../comments.php:37 ../comments.php:58
msgid "&larr; Older Comments"
msgstr "&larr; Äldre kommentarer"
#: ../comments.php:40 ../comments.php:61
msgid "Newer Comments &rarr;"
msgstr "Nyare kommentarer &rarr;"
#: ../comments.php:72
msgid "Comments are closed."
msgstr "Kommentarsfältet är avstängt."
#: ../author.php:27
msgid "About:"
msgstr "Om:"
#: ../author.php:32 ../inc/custom-comments.php:16
msgid "Website"
msgstr "Website"
#: ../author.php:34
msgid "Profile"
msgstr "Profil"
#: ../author.php:38
msgid "Posts by"
msgstr "Inlägg av "
#: ../footer.php:24
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: ../footer.php:24
#, php-format
msgid "Proudly powered by %s"
msgstr "Drivs av %s"
#: ../footer.php:26
#, php-format
msgid "Theme: %1$s by %2$s."
msgstr "tema av: %1$s by %2$s."
#: ../header.php:30
msgid "Skip to content"
msgstr "Hoppa till innehållet"
#: ../search.php:23
#, php-format
msgid "Search Results for: %s"
msgstr "Sök resultat för: %s"
#: ../404.php:22
msgid "Oops! That page can&rsquo;t be found."
msgstr "Oops! Sidan verkar inte finnas."
#: ../404.php:27
msgid ""
"It looks like nothing was found at this location. Maybe try one of the links "
"below or a search?"
msgstr ""
"Här verkar det inte finnas något. Du kan prova någon an länkarna "
"nedan eller söka efter det?"
#: ../404.php:37
msgid "Most Used Categories"
msgstr "Most Used Categories"
#. translators: %1$s: smiley
#: ../404.php:57
#, php-format
msgid "Try looking in the monthly archives. %1$s"
msgstr "Try looking in the monthly archives. %1$s"
#: ../searchform.php:9 ../searchform.php:13
msgid "Search"
msgstr "Sök"
#: ../searchform.php:11
msgid "Search &hellip;"
msgstr "Sök &hellip;"
#. Name of the template
msgid "Full Width Page"
msgstr "Full Width Page"
#. Name of the template
msgid "Empty Page Template"
msgstr "Empty Page Template"
#: ../inc/widgets.php:10
msgid "Sidebar"
msgstr "Sidebar"
#: ../inc/widgets.php:20
msgid "Hero Slider"
msgstr "Hero Slider"
#: ../inc/widgets.php:30
msgid "Hero Static"
msgstr "Hero Static"
#: ../inc/widgets.php:40
msgid "Footer Full"
msgstr "Sidfot"
#: ../inc/customizer.php:24
msgid "Slider Settings"
msgstr "Slider Inställningar"
#: ../inc/customizer.php:33
msgid "Number of slides displaying at once"
msgstr "Antal slides som visas samtidigt"
#: ../inc/customizer.php:45
msgid "Slider Time (in ms)"
msgstr "Slider tid (i ms)"
#: ../inc/customizer.php:57
msgid "Loop Slider Content"
msgstr "Loop Slider Innehåll"
#: ../inc/template-tags.php:18
#, php-format
msgid " Edited %4$s"
msgstr " Redigerat %4$s"
#: ../inc/template-tags.php:29
#, php-format
msgctxt "post date"
msgid "Posted on %s"
msgstr "Publicerat den %s"
#: ../inc/template-tags.php:34
#, php-format
msgctxt "post author"
msgid "by %s"
msgstr "av %s"
#. translators: used between list items, there is a space after the comma
#: ../inc/template-tags.php:51 ../inc/template-tags.php:57
msgid ", "
msgstr ", "
#: ../inc/template-tags.php:53
#, php-format
msgid "Posted in %1$s"
msgstr "Publicerat i %1$s"
#: ../inc/template-tags.php:59
#, php-format
msgid "Tagged %1$s"
msgstr "Taggad %1$s"
#: ../inc/template-tags.php:65
msgid "Leave a comment"
msgstr "Kommentera"
#: ../inc/template-tags.php:65
msgid "1 Comment"
msgstr "1 Kommentar"
#: ../inc/template-tags.php:65
#, php-format
msgid "% Comments"
msgstr "% Kommentarer"
#. translators: %s: Name of current post
#: ../inc/template-tags.php:72
#, php-format
msgid "Edit %s"
msgstr "Ändra %s"
#: ../inc/setup.php:48
msgid "Primary Menu"
msgstr "Huvud meny"
#: ../inc/setup.php:98
msgid "Read More..."
msgstr "Läs mer"
#: ../inc/custom-comments.php:12
msgid "Name"
msgstr "Namn"
#: ../inc/custom-comments.php:14
msgid "Email"
msgstr "E-post"
#: ../inc/custom-comments.php:25
msgctxt "noun"
msgid "Comment"
msgstr "Kommentarer"
#: ../loop-templates/content-single.php:29 ../loop-templates/content.php:33 ..
#: loop-templates/content-page.php:25
msgid "Pages:"
msgstr "Sidor:"
#: ../loop-templates/content-none.php:16
msgid "Nothing Found"
msgstr "Inget hittades"
#: ../loop-templates/content-none.php:24
#, php-format
msgid ""
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr "Redo att skriv ditt första inlägg? <a href=\"%1$s\">Börja här</a>."
#: ../loop-templates/content-none.php:28
msgid ""
"Sorry, but nothing matched your search terms. Please try again with some "
"different keywords."
msgstr ""
"Tyvärr fick din sökning inga träffar. Du kan prova igen med nya nyckelord."
#: ../loop-templates/content-none.php:33
msgid ""
"It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps "
"searching can help."
msgstr "Vi verkar inte hitta det du söker, Det kanske hjälper att söka."
#: ../loop-templates/content-page.php:34
msgid "Edit"
msgstr "Ändra"
#: ../woocommerce/myaccount/form-edit-address.php
msgid "Save Address"
msgstr "Spara adress"
#: ../woocommerce/myaccount/my-orders.php
msgid "%s for %s item"
msgstr "%s för %s vara"
#: ../woocommerce/myaccount/my-orders.php
msgid "Pay"
msgstr "Betala"
#: ../woocommerce/myaccount/my-orders.php
msgid "View"
msgstr "Visa"
#: ../woocommerce/myaccount/my-orders.php
msgid "Cancel"
msgstr "Avbryt"
#: ../woocommerce/myaccount/form-login.php
msgid "Login"
msgstr "Login"
#: ../woocommerce/myaccount/form-login.php
msgid "Password"
msgstr "Lösenord"
#: ../woocommerce/myaccount/form-login.php
msgid "Username or email address"
msgstr "Användarnamn eller E-post adress"
#: ../woocommerce/myaccount/form-login.php
msgid "Lost your password?"
msgstr "Glömt ditt lösenord?"
#: ../woocommerce/myaccount/form-login.php
msgid "Username"
msgstr "Användarnamn"
#: ../woocommerce/myaccount/form-login.php
msgid "Email address"
msgstr "E-post adress"
#: ../woocommerce/myaccount/form-login.php
msgid "Register"
msgstr "Registrera"
#: ../woocommerce/myaccount/form-login.php
msgid "Remember me"
msgstr "Kom ihåg mig"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "First name"
msgstr "Förnamn"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Last name"
msgstr "Efternamn"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Email adress"
msgstr "E-post adress"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Current Password (leave blank to leave unchanged)"
msgstr "Nuvarande lösenord (lämna tomt för att inte ändra)"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "New Password (leave blank to leave unchanged)"
msgstr "Nytt lösenord (lämna tomt för att inte ändra)"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Confirm New Password"
msgstr "Bekräfta nytt lösenord"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Password Change"
msgstr "Byt lösenord"
#: ../woocommerce/myaccount/form-edit-account.php
msgid "Save changes"
msgstr "Spara ändringar"
#. Name of the theme
msgid "UnderStrap"
msgstr "UnderStrap"
#. Theme URI of the theme
msgid "http://understrap.com"
msgstr "http://understrap.com"
#. Description of the theme
msgid ""
"Combination of Automattic´s _s theme and Bootstrap 4. Made as a solid "
"starting point for your next theme project and WordPress website. Use it as "
"starter theme or as parent theme. It is up to you."
msgstr ""
"En kombination av Automattic´s _s tema och Bootstrap 4. Gjort som en bas för "
"ditt nästa tema eller Wordpress webbplats. Använd det som en grund eller som "
"ett förälder tema. Det är upp till dig."
#. Author of the theme
msgid "Holger Koenemann"
msgstr "Holger Koenemann"
#. Author URI of the theme
msgid "http://www.holgerkoenemann.de"
msgstr "http://www.holgerkoenemann.de"

1066
languages/understrap.pot Executable file → Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,8 @@
<?php
/**
* The template used for displaying page content in page.php
* Blank content partial template.
*
* @package understrap
*/
?>
<?php the_content(); ?>
the_content();

View File

@ -1,10 +1,8 @@
<?php
/**
* The template used for displaying page content in page.php
* Content empty partial template.
*
* @package understrap
*/
?>
<?php the_content(); ?>
the_content();

View File

@ -9,33 +9,36 @@
?>
<article id="post-0" class="post no-results not-found">
<section class="no-results not-found">
<header class="page-header">
<h2 class="page-title"><?php _e( 'Nothing Found', 'understrap' ); ?></h2>
<h1 class="page-title"><?php esc_html_e( 'Nothing Found', 'understrap' ); ?></h1>
</header><!-- .page-header -->
<div class="page-content">
<?php if ( is_home() && current_user_can( 'publish_posts' ) ) : ?>
<?php
if ( is_home() && current_user_can( 'publish_posts' ) ) : ?>
<p><?php printf( __( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.', 'understrap' ), esc_url( admin_url( 'post-new.php' ) ) ); ?></p>
<p><?php printf( wp_kses( __( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.', 'understrap' ), array(
'a' => array(
'href' => array(),
),
) ), esc_url( admin_url( 'post-new.php' ) ) ); ?></p>
<?php elseif ( is_search() ) : ?>
<p><?php _e( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'understrap' ); ?></p>
<?php get_search_form(); ?>
<?php else : ?>
<p><?php _e( 'It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help.', 'understrap' ); ?></p>
<?php get_search_form(); ?>
<?php endif; ?>
<p><?php esc_html_e( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'understrap' ); ?></p>
<?php
get_search_form();
else : ?>
<p><?php esc_html_e( 'It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help.', 'understrap' ); ?></p>
<?php
get_search_form();
endif; ?>
</div><!-- .page-content -->
</article><!-- .no-results -->
</section><!-- .no-results -->

View File

@ -1,30 +1,30 @@
<?php
/**
* The template used for displaying page content in page.php
* Partial template for content in page.php
*
* @package understrap
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
?>
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header">
<?php the_title( '<h2 class="entry-title">', '</h2>' ); ?>
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
</header><!-- .entry-header -->
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="entry-content">
<?php the_content(); ?>
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->

View File

@ -1,14 +1,17 @@
<?php
/**
* Search results partial template.
*
* @package understrap
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
?>
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header">
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
'</a></h2>' ); ?>
<?php if ( 'post' == get_post_type() ) : ?>

View File

@ -1,14 +1,16 @@
<?php
/**
* Single post partial template.
*
* @package understrap
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
?>
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header">
<?php the_title( '<h2 class="entry-title">', '</h2>' ); ?>
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
<div class="entry-meta">
@ -18,17 +20,17 @@
</header><!-- .entry-header -->
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="entry-content">
<?php the_content(); ?>
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->

View File

@ -1,40 +0,0 @@
<?php
/**
* The template used for displaying page content in a vertical layout
* The template modifies Article's ID by using post's slug to lower case as anchor point.
* @package understrap
*/
?>
<?php global $post ?>
<article id="<?php echo strtolower( $post->post_title ); ?>" <?php post_class(); ?>>
<header class="entry-header">
<?php the_title( '<h2 class="entry-title">', '</h2>' ); ?>
</header><!-- .entry-header -->
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="entry-content">
<?php the_content(); ?>
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->
<footer class="entry-footer">
<?php edit_post_link( __( 'Edit', 'understrap' ), '<span class="edit-link">', '</span>' ); ?>
</footer><!-- .entry-footer -->
</article><!-- #post-## -->

View File

@ -1,14 +1,18 @@
<?php
/**
* Post rendering content according to caller of get_template_part.
*
* @package understrap
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
<header class="entry-header">
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ),
'</a></h2>' ); ?>
<?php if ( 'post' == get_post_type() ) : ?>
@ -17,30 +21,30 @@
</div><!-- .entry-meta -->
<?php endif; ?>
</header><!-- .entry-header -->
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<div class="entry-content">
<?php echo get_the_post_thumbnail( $post->ID, 'large' ); ?>
<?php
the_excerpt();
?>
<div class="entry-content">
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->
<?php
the_excerpt();
?>
<?php
wp_link_pages( array(
'before' => '<div class="page-links">' . __( 'Pages:', 'understrap' ),
'after' => '</div>',
) );
?>
</div><!-- .entry-content -->
<footer class="entry-footer">
<?php understrap_entry_footer(); ?>
</footer><!-- .entry-footer -->
</article><!-- #post-## -->
</article><!-- #post-## -->

View File

@ -1,10 +1,13 @@
{
"name": "understrap",
"version": "0.4.9",
"version": "0.6.0",
"description": "Wordpress Theme framework",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"postinstall": "gulp copy-assets"
},
"engines": {
"npm": ">=2.1.8"
},
"repository": {
"type": "git",
@ -22,26 +25,31 @@
"bugs": {
"url": "https://github.com/holger1411/understrap/issues"
},
"homepage": "https://github.com/holger1411/understrap",
"homepage": "https://understrap.com",
"dependencies": {
"bootstrap": "^4.0.0-alpha.5",
"browser-sync": "^2.16.0",
"font-awesome": "^4.6.3",
"bootstrap": "^4.0.0-alpha.6",
"browser-sync": "^2.18.8",
"del": "^2.2.2",
"font-awesome": "^4.7.0",
"gulp": "^3.9.1",
"gulp-clone": "^1.0.0",
"gulp-concat": "^2.6.0",
"gulp-concat": "^2.6.1",
"gulp-cssnano": "^2.1.2",
"gulp-ignore": "^2.0.1",
"gulp-ignore": "^2.0.2",
"gulp-imagemin": "^3.2.0",
"gulp-merge": "^0.1.1",
"gulp-plumber": "^1.1.0",
"gulp-rename": "^1.2.2",
"gulp-rimraf": "^0.2.0",
"gulp-sass": "^2.3.2",
"gulp-sourcemaps": "^1.6.0",
"gulp-uglify": "^2.0.0",
"gulp-watch": "^4.3.6",
"merge2": "^1.0.2",
"owl.carousel": "^2.1.4",
"gulp-rimraf": "^0.2.1",
"gulp-sass": "^3.1.0",
"gulp-sourcemaps": "2.4.1",
"gulp-uglify": "^2.1.2",
"gulp-watch": "^4.3.11",
"merge2": "^1.0.3",
"run-sequence": "^1.2.2",
"gulp-clean-css": "^3.0.4",
"undescores-for-npm": "^1.0.0"
},
"devDependencies": {
}
}

View File

@ -6,27 +6,28 @@
*
* @package understrap
*/
?>
?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo('charset'); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-title" content="<?php bloginfo('name'); ?> - <?php bloginfo('description'); ?>">
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>">
<?php wp_head(); ?>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-title"
content="<?php bloginfo( 'name' ); ?> - <?php bloginfo( 'description' ); ?>">
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
<?php wp_head(); ?>
</head>
<body>
<?php while (have_posts()) : the_post(); ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part('loop-templates/content', 'blank'); ?>
<?php get_template_part( 'loop-templates/content', 'blank' ); ?>
<?php endwhile; // end of the loop. ?>
<?php wp_footer();?>
<?php wp_footer(); ?>
</body>
</html>

View File

@ -0,0 +1,57 @@
<?php
/**
* Template Name: Left and Right Sidebar Layout
*
* This template can be used to override the default template and sidebar setup
*
* @package understrap
*/
get_header();
$container = get_theme_mod( 'understrap_container_type' );
?>
<div class="wrapper" id="page-wrapper">
<div class="<?php echo esc_html( $container ); ?>" id="content">
<div class="row">
<?php get_sidebar( 'left' ); ?>
<div
class="<?php
if ( is_active_sidebar( 'left-sidebar' ) xor is_active_sidebar( 'right-sidebar' ) ) : ?>col-md-8<?php
elseif ( is_active_sidebar( 'left-sidebar' ) && is_active_sidebar( 'right-sidebar' ) ) : ?>col-md-4<?php
else : ?>col-md-12<?php
endif; ?> content-area"
id="primary">
<main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php get_sidebar( 'right' ); ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -2,17 +2,16 @@
/**
* Template Name: Empty Page Template
*
* Template for displaying a page just with the header and footer area and a "naked" content area in between. Good for landingpages and other types of pages where you want to add a lot of custom markup
* Template for displaying a page just with the header and footer area and a "naked" content area in between.
* Good for landingpages and other types of pages where you want to add a lot of custom markup.
*
* @package understrap
*/
get_header(); ?>
get_header();
<?php while ( have_posts() ) : the_post(); ?>
while ( have_posts() ) : the_post();
get_template_part( 'loop-templates/content', 'empty' );
endwhile;
<?php get_template_part( 'loop-templates/content', 'empty' ); ?>
<?php endwhile; // end of the loop. ?>
<?php get_footer(); ?>
get_footer();

View File

@ -2,42 +2,48 @@
/**
* Template Name: Full Width Page
*
* Template for displaying a page without sidebar even if a sidebar widget is published
* Template for displaying a page without sidebar even if a sidebar widget is published.
*
* @package understrap
*/
get_header(); ?>
get_header();
$container = get_theme_mod( 'understrap_container_type' );
?>
<div class="wrapper" id="full-width-page-wrapper">
<div id="content" class="container">
<div id="primary" class="col-md-12 content-area">
<main id="main" class="site-main" role="main">
<div class="<?php echo esc_html( $container ); ?>" id="content">
<?php while ( have_posts() ) : the_post(); ?>
<div class="row">
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<div class="col-md-12 content-area" id="primary">
<?php
// If comments are open or we have at least one comment, load up the comment template
if ( comments_open() || get_comments_number() ) :
<main class="site-main" id="main" role="main">
comments_template();
endif;
?>
<?php while ( have_posts() ) : the_post(); ?>
<?php endwhile; // end of the loop. ?>
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
</div><!-- .row end -->
</div><!-- Container end -->
</main><!-- #main -->
</div><!-- #primary -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>
<?php get_footer(); ?>

View File

@ -0,0 +1,51 @@
<?php
/**
* Template Name: Left Sidebar Layout
*
* This template can be used to override the default template and sidebar setup
*
* @package understrap
*/
get_header();
$container = get_theme_mod( 'understrap_container_type' );
?>
<div class="wrapper" id="page-wrapper">
<div class="<?php echo esc_html( $container ); ?>" id="content">
<div class="row">
<?php get_sidebar( 'left' ); ?>
<div
class="<?php if ( is_active_sidebar( 'left-sidebar' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"
id="primary">
<main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -0,0 +1,51 @@
<?php
/**
* Template Name: Right Sidebar Layout
*
* This template can be used to override the default template and sidebar setup
*
* @package understrap
*/
get_header();
$container = get_theme_mod( 'understrap_container_type' );
?>
<div class="wrapper" id="page-wrapper">
<div class="<?php echo esc_html( $container ); ?>" id="content">
<div class="row">
<div
class="<?php if ( is_active_sidebar( 'right-sidebar' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area"
id="primary">
<main class="site-main" id="main" role="main">
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php get_sidebar( 'right' ); ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -1,53 +0,0 @@
<?php
/**
* Template Name: Vertical One Page
*
* Template for displaying a page without sidebar even if a sidebar widget is published
*
* @package understrap
*/
get_header(); ?>
<?php
/*
* Exclude the posts page from being shown in this layout.
* Order pages by their order number.
*/
$exclude = get_option( 'page_for_posts' );
$args = array(
'post_type' => 'page',
'post__not_in' => array( $exclude ),
'orderby' => 'menu_order',
'order' => 'ASC'
);
$qry = new WP_Query( $args );
?>
<div class="wrapper" id="full-width-page-wrapper">
<div id="content" class="container">
<div id="primary" class="col-md-12 content-area">
<main id="main" class="site-main" role="main">
<?php if ( have_posts() ): while ( $qry->have_posts() ): $qry->the_post() ?>
<div class="page">
<?php get_template_part( 'loop-templates/content', 'verticalpage' ); ?>
</div>
<?php wp_reset_postdata(); //reset custom query?>
<?php endwhile; endif; ?>
</main><!-- #main -->
</div><!-- #primary -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -10,41 +10,52 @@
* @package understrap
*/
get_header(); ?>
get_header();
$container = get_theme_mod( 'understrap_container_type' );
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
<div class="wrapper" id="page-wrapper">
<div id="content" class="container">
<div class="row">
<div id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area">
<main id="main" class="site-main" role="main">
<div class="<?php echo esc_html( $container ); ?>" id="content" tabindex="-1">
<?php while ( have_posts() ) : the_post(); ?>
<div class="row">
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<!-- Do the left sidebar check -->
<?php get_template_part( 'global-templates/left-sidebar-check', 'none' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<main class="site-main" id="main">
<?php endwhile; // end of the loop. ?>
<?php while ( have_posts() ) : the_post(); ?>
</main><!-- #main -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
<?php
// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
<!-- Do the right sidebar check -->
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'right' ); ?>
<?php endif; ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>

View File

@ -1,56 +0,0 @@
/*!
* Bootstrap v3.3.6 (http://getbootstrap.com)
* Copyright 2011-2015 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
// Core variables and mixins
@import "../../src/sass/bootstrap3/bootstrap/variables";
@import "../../src/sass/bootstrap3/bootstrap/mixins";
// Reset and dependencies
@import "../../src/sass/bootstrap3/bootstrap/normalize";
@import "../../src/sass/bootstrap3/bootstrap/print";
@import "../../src/sass/bootstrap3/bootstrap/glyphicons";
// Core CSS
@import "../../src/sass/bootstrap3/bootstrap/scaffolding";
@import "../../src/sass/bootstrap3/bootstrap/type";
@import "../../src/sass/bootstrap3/bootstrap/code";
@import "../../src/sass/bootstrap3/bootstrap/grid";
@import "../../src/sass/bootstrap3/bootstrap/tables";
@import "../../src/sass/bootstrap3/bootstrap/forms";
@import "../../src/sass/bootstrap3/bootstrap/buttons";
// Components
@import "../../src/sass/bootstrap3/bootstrap/component-animations";
@import "../../src/sass/bootstrap3/bootstrap/dropdowns";
@import "../../src/sass/bootstrap3/bootstrap/button-groups";
@import "../../src/sass/bootstrap3/bootstrap/input-groups";
@import "../../src/sass/bootstrap3/bootstrap/navs";
@import "../../src/sass/bootstrap3/bootstrap/navbar";
@import "../../src/sass/bootstrap3/bootstrap/breadcrumbs";
@import "../../src/sass/bootstrap3/bootstrap/pagination";
@import "../../src/sass/bootstrap3/bootstrap/pager";
@import "../../src/sass/bootstrap3/bootstrap/labels";
@import "../../src/sass/bootstrap3/bootstrap/badges";
@import "../../src/sass/bootstrap3/bootstrap/jumbotron";
@import "../../src/sass/bootstrap3/bootstrap/thumbnails";
@import "../../src/sass/bootstrap3/bootstrap/alerts";
@import "../../src/sass/bootstrap3/bootstrap/progress-bars";
@import "../../src/sass/bootstrap3/bootstrap/media";
@import "../../src/sass/bootstrap3/bootstrap/list-group";
@import "../../src/sass/bootstrap3/bootstrap/panels";
@import "../../src/sass/bootstrap3/bootstrap/responsive-embed";
@import "../../src/sass/bootstrap3/bootstrap/wells";
@import "../../src/sass/bootstrap3/bootstrap/close";
// Components w/ JavaScript
@import "../../src/sass/bootstrap3/bootstrap/modals";
@import "../../src/sass/bootstrap3/bootstrap/tooltip";
@import "../../src/sass/bootstrap3/bootstrap/popovers";
@import "../../src/sass/bootstrap3/bootstrap/carousel";
// Utility classes
@import "../../src/sass/bootstrap3/bootstrap/utilities";
@import "../../src/sass/bootstrap3/bootstrap/responsive-utilities";

View File

@ -1,14 +1,14 @@
/*!
* Bootstrap v4.0.0-alpha.5 (https://getbootstrap.com)
* Copyright 2011-2016 The Bootstrap Authors
* Copyright 2011-2016 Twitter, Inc.
* Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors
* Copyright 2011-2017 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
// Core variables and mixins
@import "../../src/sass/bootstrap4/custom";
@import "../../src/sass/bootstrap4/variables";
@import "../../src/sass/bootstrap4/mixins";
@import "../../src/sass/bootstrap4/custom";
// Reset and dependencies
@import "../../src/sass/bootstrap4/normalize";
@ -25,7 +25,7 @@
@import "../../src/sass/bootstrap4/buttons";
// Components
@import "../../src/sass/bootstrap4/animation";
@import "../../src/sass/bootstrap4/transitions";
@import "../../src/sass/bootstrap4/dropdown";
@import "../../src/sass/bootstrap4/button-group";
@import "../../src/sass/bootstrap4/input-group";
@ -35,7 +35,7 @@
@import "../../src/sass/bootstrap4/card";
@import "../../src/sass/bootstrap4/breadcrumb";
@import "../../src/sass/bootstrap4/pagination";
@import "../../src/sass/bootstrap4/tags";
@import "../../src/sass/bootstrap4/badge";
@import "../../src/sass/bootstrap4/jumbotron";
@import "../../src/sass/bootstrap4/alert";
@import "../../src/sass/bootstrap4/progress";
@ -52,3 +52,4 @@
// Utility classes
@import "../../src/sass/bootstrap4/utilities";

View File

@ -1,5 +1,5 @@
/*!
* Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@ -15,3 +15,5 @@
@import "../../src/sass/fontawesome/rotated-flipped";
@import "../../src/sass/fontawesome/stacked";
@import "../../src/sass/fontawesome/icons";
@import "../../src/sass/fontawesome/screen-reader";

View File

@ -1,2 +0,0 @@
@import "../../src/sass/owl-carousel2/owl.carousel";
@import "../../src/sass/owl-carousel2/theme.default";

View File

@ -0,0 +1 @@
@import "../../src/sass/underscores/media/galleries";

View File

@ -4,8 +4,9 @@
//Optional files - If you dont use the corresponding scripts/fonts comment em out
@import "assets/font-awesome"; // <------- Font Awesome Icon font
@import "assets/owl-carousel2"; // <------- Owl Carousel2 slider styles
@import "assets/underscores"; // <------- Underscores media styles
// Any additional imported files //
@import "theme/theme"; // <--------- Thats where you can add your own design. Thats your part!
@import "theme/theme"; // <--------- Thats where you can add your own design. Thats your part!
@import "theme/contact-form7"; // contact form 7 - Bootatrap 4 support

View File

@ -0,0 +1,73 @@
/*
* Use existing Bootstrap 4 classes and
* variables to extend - override CF7 style
*
* Useful CF7 classes:
* .wpcf7 the wrapper element
* .wpcf7-form
* .wpcf7-form-control
* .wpcf7-text
* .wpcf7-email
* .wpcf7-textarea
* .wpcf7-submit
*/
// keep a max width in case it is just the form and nothing else
// we do not want a form spanning whole page
.wpcf7 {
max-width: 600px;
margin: 0 auto !important;
// all inputs except radios and checkboxes inherit from form-control
input[type=text],
input[type=search],
input[type=url],
input[type=tel],
input[type=number],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
input[type=email],
input[type=file],
input[type=submit],
select,
textarea {
@extend .form-control;
}
// submit button, inherit .btn and .btn-outline-primary classes.
input[type=submit] {
@extend .btn;
@extend .btn-outline-primary;
}
.wpcf7-form {
// set paragraphs to behave like divs with class .form-group
p {
@extend .form-group;
}
// let labels be 100%
label {
width: 100%;
}
}
// not valid tip for each control
.wpcf7-not-valid-tip {
color: $brand-danger !important;
}
// validation errors ourput bottom of form
.wpcf7-validation-errors {
@extend .form-control;
color: $brand-danger !important;
border: 1px solid $gray-lighter !important;
}
}

View File

@ -5,9 +5,5 @@
// Thats the ugly Bootstrap blue used for all the links, primary buttons etc.
// Just add your color code here, compile the theme.scss file to change this color everywhere
$brand-primary: #895cd1; //#ff6d5a
// Basics of a navbar
$navbar-height: 60px;
$navbar-margin-bottom: 0px;
$navbar-border-radius: 0px;
$font-family-sans-serif:Arial, sans-serif;
$brand-primary: #7852B2; //#ff6d5a

View File

@ -1,186 +1,143 @@
// Some basic padding for all wrappers
.wrapper {
padding:$grid-gutter-width-base 0;
}
.wrapper {
padding: $grid-gutter-width-base 0; }
// Reset hero wrapper padding to 0
#wrapper-hero {
padding:0px!important;
}
#wrapper-hero { padding: 0px !important; }
// Adding basic Wordpress classes to pass the Wordpress.org tests
.sticky, .gallery-caption, .bypostauthor {
font-size:inherit;
.sticky,
.gallery-caption,
.bypostauthor {
font-size: inherit;
}
// Separate sticky wrapper from main content
.wrapper#wrapper-sticky {
border-bottom:1px solid $gray-light;
}
.wrapper#wrapper-sticky { border-bottom: 1px solid $gray-light; }
// Adding some contrast background color to footer full widget
#wrapper-footer-full, #wrapper-static-hero{
background-color: $gray-lighter;
}
#wrapper-footer-full,
#wrapper-static-hero { background-color: $gray-lighter; }
// Necessary WP classes
.wp-caption {
font-size: inherit;
}
.wp-caption { font-size: inherit; }
.wp-caption-text {
font-size: inherit;
}
.wp-caption-text { font-size: inherit; }
.screen-reader-text {
font-size: inherit;
}
.screen-reader-text { font-size: inherit; }
.alignright {
float: right;
padding-left:10px;
float: right;
padding-left: 10px;
}
.alignleft {
float: left;
padding-right:10px;
float: left;
padding-right: 10px;
}
.aligncenter {
margin:0px auto;
}
.aligncenter { margin: 0px auto; }
//Post design
.entry-footer span {
padding-right:10px;
}
// Post design
.entry-footer span { padding-right: 10px; }
//Limit featured image size to 100%
img.wp-post-image, article img, figure, img, #secondary img {
max-width: 100%;
// Limit featured image size to 100%
img.wp-post-image,
article img,
figure,
img,
#secondary img {
max-width: 100%;
height: auto;
}
// Skip to content link
a.skip-link{
z-index: 1000;
position: fixed;
top: 0px;
right: 0px;
a.skip-link {
position: fixed;
z-index: 1000;
top: 0px;
right: 0px;
}
// Reset Jumbotron default margin
.jumbotron {
margin-bottom:0px;
.jumbotron { margin-bottom: 0px; }
// Bootstrap3 to Bootstrap4 "translation"
.menu-item {
float: left;
display: inline;
width: auto;
}
//Bootstrap3 to Bootstrap4 "translation"
.menu-item {float:left; width:auto; display:inline;}
//ul.nav.navbar-nav a {
// display: block;
// padding-top: .425rem;
// padding-bottom: .425rem;
//}
// Navbar toggle
//
// Custom button for toggling the `.navbar-collapse`, powered by the collapse
// JavaScript plugin.
// Navbar vertical align
.navbar-toggle {
position: relative;
float: right;
margin-right: $navbar-padding-x;
padding: 9px 10px;
background-color: transparent;
background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
border: 1px solid transparent;
// We remove the `outline` here, but later compensate by attaching `:hover`
// styles to `:focus`.
&:focus {
outline: 0;
}
// Bars
.icon-bar {
display: block;
width: 22px;
height: 2px;
border-radius: 1px;
}
.icon-bar + .icon-bar {
margin-top: 4px;
}
.bg-primary .dropdown-menu {
background-color:$brand-primary;
}
.navbar {
.collapsing, .collapse.in {
width:100%;
float:left;
}
.bg-success .dropdown-menu {
background-color:$brand-success;
}
.navbar-dark {
.navbar-toggle {
border:1px solid #fff;
}
.icon-bar {
border-bottom:1px solid #fff;
}
.dropdown-menu {
background-color: $gray-dark;
}
}
.navbar #main-menu {
float:left;
}
.navbar-nav {
.nav-item {
float: left;
}
.nav-link {
display: block;
padding-top: .425rem;
padding-bottom: .425rem;
+ .nav-link {
margin-left: 0rem;
}
}
.nav-item + .nav-item {
margin-left: 0rem;
}
}
.nav-link {
margin-left:.425rem;
margin-right:.425rem;
.bg-inverse .dropdown-menu {
background-color:$brand-inverse;
}
// Fixing BS dropdown in a dropdown
.navbar-toggleable-md .navbar-nav .dropdown-menu {
float:left;
}
.dropdown-menu .dropdown-menu {
position:relative;
display:block;
position: relative;
display: block;
margin-left: 10px;
border: none;
box-shadow: none;
margin-left:10px;
width:140px;
li {
list-style: square;
padding-left: 0px;
list-style: square;
}
}
.dropdown-menu .menu-item {
width:100%;
a:hover {
background-color:$brand-primary;
}
.dropdown-menu .menu-item {
width: 100%;
a.nav-link{
margin:0px;
padding:$nav-link-padding;
}
a.nav-link:hover {
background-color: $brand-primary;
}
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
cursor: pointer;
}
// Clearing after gallery
.gallery:after {
content: "";
display: table;
clear: both;
}
// Clearing after widget
aside.widget{clear:both;}
// Makes widgets in hero slider 100% width
#wrapper-hero .carousel-inner .textwidget {
width:100%;
}
// Adjusting brand link if h1 is used
h1.navbar-brand {
a {
color:inherit;
}
a:hover {
text-decoration:none;
}
}

View File

@ -5,57 +5,70 @@
* @package understrap
*/
get_header(); ?>
<div class="wrapper search-wrapper">
<div class="container">
get_header();
<div class="row">
<section id="primary" class="<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>col-md-8<?php else : ?>col-md-12<?php endif; ?> content-area">
<main id="main" class="site-main" role="main">
$container = get_theme_mod( 'understrap_container_type' );
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
?>
<?php if ( have_posts() ) : ?>
<div class="wrapper" id="search-wrapper">
<header class="page-header">
<div class="<?php echo esc_html( $container ); ?>" id="content" tabindex="-1">
<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'understrap' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
</header><!-- .page-header -->
<div class="row">
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<!-- Do the left sidebar check and opens the primary div -->
<?php get_template_part( 'global-templates/left-sidebar-check', 'none' ); ?>
<?php
/**
* Run the loop for the search to output the results.
* If you want to overload this in a child theme then include a file
* called content-search.php and that will be used instead.
*/
get_template_part( 'loop-templates/content', 'search' );
?>
<main class="site-main" id="main">
<?php endwhile; ?>
<?php if ( have_posts() ) : ?>
<?php the_posts_navigation(); ?>
<header class="page-header">
/* translators:*/
<h1 class="page-title"><?php printf( esc_html__( 'Search Results for: %s', 'understrap' ),
'<span>' . get_search_query() . '</span>' ); ?></h1>
<?php else : ?>
</header><!-- .page-header -->
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php endif; ?>
<?php
/**
* Run the loop for the search to output the results.
* If you want to overload this in a child theme then include a file
* called content-search.php and that will be used instead.
*/
get_template_part( 'loop-templates/content', 'search' );
?>
</main><!-- #main -->
</section><!-- #primary -->
<?php endwhile; ?>
<?php get_sidebar(); ?>
<?php else : ?>
<?php get_template_part( 'loop-templates/content', 'none' ); ?>
<?php endif; ?>
</main><!-- #main -->
<!-- The pagination component -->
<?php understrap_pagination(); ?>
</div><!-- #primary -->
<!-- Do the right sidebar check -->
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
<?php get_sidebar( 'right' ); ?>
<?php endif; ?>
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- .row -->
</div><!-- Container end -->
</div><!-- Wrapper end -->
<?php get_footer(); ?>
<?php get_footer(); ?>

View File

@ -4,13 +4,16 @@
*
* @package understrap
*/
?>
<form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>" role="search">
<label for="s" class="assistive-text"><?php _e( 'Search', 'understrap' ); ?></label>
<div class="input-group">
<input type="text" class="field form-control" name="s" id="s" placeholder="<?php esc_attr_e( 'Search &hellip;', 'understrap' ); ?>" />
<span class="input-group-btn">
<input type="submit" class="submit btn btn-primary" name="submit" id="searchsubmit" value="<?php esc_attr_e( 'Search', 'understrap' ); ?>" />
</span>
</div>
</form>
<form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>" role="search">
<label class="assistive-text" for="s"><?php esc_html_e( 'Search', 'understrap' ); ?></label>
<div class="input-group">
<input class="field form-control" id="s" name="s" type="text"
placeholder="<?php esc_attr_e( 'Search &hellip;', 'understrap' ); ?>">
<span class="input-group-btn">
<input class="submit btn btn-primary" id="searchsubmit" name="submit" type="submit"
value="<?php esc_attr_e( 'Search', 'understrap' ); ?>">
</span>
</div>
</form>

View File

@ -1,11 +1,30 @@
<?php if ( is_active_sidebar( 'footerfull' ) ): ?>
<?php
/**
* Sidebar setup for footer full.
*
* @package understrap
*/
<!-- ******************* The Hero Widget Area ******************* -->
$container = get_theme_mod( 'understrap_container_type' );
<div class="wrapper" id="wrapper-footer-full">
?>
<?php dynamic_sidebar( 'footerfull' ); ?>
<?php if ( is_active_sidebar( 'footerfull' ) ) : ?>
</div><!-- #wrapper-footer-full -->
<!-- ******************* The Footer Full-width Widget Area ******************* -->
<div class="wrapper" id="wrapper-footer-full">
<div class="<?php echo esc_html( $container ); ?>" id="footer-full-content" tabindex="-1">
<div class="row">
<?php dynamic_sidebar( 'footerfull' ); ?>
</div>
</div>
</div><!-- #wrapper-footer-full -->
<?php endif; ?>

Some files were not shown because too many files have changed in this diff Show More