Compare commits
423 Commits
Author | SHA1 | Date |
---|---|---|
Ray Elliott | 14390eb85e | |
Ray Elliott | f7ee22cf2e | |
Ray Elliott | ce1d51f2a5 | |
Ray Elliott | 26e7c3ec1f | |
Ray Elliott | b9153665cc | |
Ray Elliott | 63c989de7e | |
Ray Elliott | 395f47fb4c | |
Ray Elliott | e8d43c0f79 | |
Ray Elliott | f7ae24aa05 | |
Ray Elliott | ac2cea0d8a | |
UnderstrapFramework | d4c6dd4c43 | |
IanDelMar | 1d78ec2255 | |
UnderstrapFramework | 40bf881aa9 | |
IanDelMar | 092e4cb156 | |
UnderstrapFramework | cb9587fb2b | |
UnderstrapFramework | fa4d143d8f | |
IanDelMar | e7dcb5bbb7 | |
IanDelMar | 27572a2117 | |
IanDelMar | 7ea00a95c9 | |
IanDelMar | 1d5013961e | |
UnderstrapFramework | 7e61a803f1 | |
IanDelMar | 0860210d27 | |
IanDelMar | a230482355 | |
IanDelMar | 7a783d1cd6 | |
IanDelMar | 76ee06b67a | |
UnderstrapFramework | 0b7c43420f | |
UnderstrapFramework | 246f123b57 | |
IanDelMar | ba6f43b6f9 | |
IanDelMar | ffdf78867e | |
IanDelMar | c4eeba9d3a | |
IanDelMar | 860d8c123a | |
IanDelMar | ce387ff7bd | |
IanDelMar | 59ed94cb34 | |
IanDelMar | e4cf59e251 | |
IanDelMar | ae52ff3702 | |
IanDelMar | 884615d845 | |
UnderstrapFramework | 064e1d4534 | |
IanDelMar | 09a1985c25 | |
IanDelMar | b5f4ca61d8 | |
IanDelMar | 7ba9dca959 | |
IanDelMar | 9d1bee8c94 | |
IanDelMar | a5251a8d9b | |
IanDelMar | bb81469491 | |
IanDelMar | 33ae79e627 | |
IanDelMar | d88dca56dc | |
UnderstrapFramework | a74cd40cf4 | |
IanDelMar | e84fca387a | |
IanDelMar | 7630599003 | |
dependabot[bot] | 771a3b0b40 | |
UnderstrapFramework | e8c4eb1eca | |
UnderstrapFramework | 1a441a26ef | |
UnderstrapFramework | 34e1bde984 | |
UnderstrapFramework | 45cc45e22e | |
UnderstrapFramework | 1f7327c7e4 | |
Amanda Dominy | 6be4239fc1 | |
Amanda Dominy | 53c7d59767 | |
UnderstrapFramework | 41115509cd | |
IanDelMar | 01ca1652e9 | |
UnderstrapFramework | 11760a7c55 | |
UnderstrapFramework | 3552ae52b3 | |
IanDelMar | c6a4ee3a58 | |
IanDelMar | 3bda450372 | |
IanDelMar | cde4e1bc98 | |
IanDelMar | 6227adc581 | |
IanDelMar | b786f04859 | |
UnderstrapFramework | cbcb0dda56 | |
UnderstrapFramework | 75d429aeab | |
UnderstrapFramework | 85d0a38b36 | |
UnderstrapFramework | 9791ed4422 | |
UnderstrapFramework | 1ab5187ff7 | |
William Patton | 88875aae79 | |
UnderstrapFramework | 4f3918c725 | |
IanDelMar | 3a4257c8b0 | |
IanDelMar | 03c06cc124 | |
IanDelMar | f3f657df99 | |
IanDelMar | 594231d02d | |
UnderstrapFramework | bc6358683b | |
UnderstrapFramework | eec39cac78 | |
UnderstrapFramework | e2f3304bf8 | |
UnderstrapFramework | 782fe4a1de | |
UnderstrapFramework | ce8c74e219 | |
IanDelMar | c57a00a496 | |
IanDelMar | 7d012cfca5 | |
IanDelMar | c20055d0ad | |
IanDelMar | 0e1977ac64 | |
IanDelMar | ecda11ac10 | |
IanDelMar | ff8412c0d6 | |
IanDelMar | e4cc30f990 | |
IanDelMar | ae43f9b620 | |
IanDelMar | bf792512ce | |
Noel Springer | 954dd9d3bc | |
UnderstrapFramework | 2f752095a6 | |
UnderstrapFramework | 9af15d7b11 | |
UnderstrapFramework | 1ac8eb24bc | |
UnderstrapFramework | b7e3d19ab5 | |
UnderstrapFramework | c15a0de31d | |
UnderstrapFramework | e926ed9021 | |
UnderstrapFramework | 8e2e3c035c | |
UnderstrapFramework | dfb5311d9d | |
UnderstrapFramework | 124b606a31 | |
UnderstrapFramework | 3f7fd8ff36 | |
UnderstrapFramework | cf100502d7 | |
UnderstrapFramework | 10688f7dc3 | |
UnderstrapFramework | 5c7e5e59ae | |
UnderstrapFramework | ca61bd1e22 | |
UnderstrapFramework | 2a2e78df26 | |
UnderstrapFramework | d32cc2d3c6 | |
UnderstrapFramework | 28b8e76175 | |
UnderstrapFramework | 00cf4043d3 | |
UnderstrapFramework | 311d330c72 | |
UnderstrapFramework | 87360068c1 | |
UnderstrapFramework | cd6b58df53 | |
UnderstrapFramework | 7f9412557d | |
UnderstrapFramework | 063e91e2b5 | |
UnderstrapFramework | d7a7be8a3b | |
UnderstrapFramework | f4e3ebec5d | |
Andrew Schultz | 522bb8fdf2 | |
IanDelMar | e980abf7ca | |
IanDelMar | a5c9784349 | |
UnderstrapFramework | 36aa3366b2 | |
UnderstrapFramework | fe9d3fbc37 | |
UnderstrapFramework | a2311c8f67 | |
UnderstrapFramework | d506a57269 | |
IanDelMar | c636a000ec | |
IanDelMar | 5877e21228 | |
IanDelMar | 7a63872671 | |
IanDelMar | a2bbdb0eb7 | |
IanDelMar | 628601415b | |
IanDelMar | b64ba79f79 | |
IanDelMar | 27824b3c9c | |
IanDelMar | c159b33564 | |
IanDelMar | a4f7316e08 | |
IanDelMar | c985f696ac | |
IanDelMar | 0efdd8c821 | |
IanDelMar | 10c2597b64 | |
IanDelMar | 95415cd098 | |
IanDelMar | 527118bd2f | |
Noel Springer | 59ec5c4a43 | |
IanDelMar | aaf2da70f0 | |
dependabot[bot] | 35b33ef0d5 | |
dependabot[bot] | fb159dc538 | |
dependabot[bot] | aee07bb0ed | |
dependabot[bot] | ba49b68f62 | |
UnderstrapFramework | 91cba1ccac | |
UnderstrapFramework | 90bbcfe29e | |
UnderstrapFramework | ccd1075c89 | |
Cedric | 41d7a44fcf | |
IanDelMar | 4ba652edfe | |
lilumi | 7a02eed85c | |
lilumi | a31199a7a1 | |
Lilumi Odi | 16144fd330 | |
Lilumi Odi | ac0713dfca | |
Pavlic | 681898a422 | |
Gary Kealy | c8c8caee62 | |
IanDelMar | 669b75104b | |
IanDelMar | 660ccc6f8c | |
IanDelMar | 7ad430f3e9 | |
IanDelMar | 7808d0c4fd | |
Gary Kealy | 2dac14e6c1 | |
Gary Kealy | bc3c4cb375 | |
Holger | c2a06502b7 | |
Gary Kealy | afca2ffb56 | |
Gary Kealy | 327e0ddb59 | |
Gary Kealy | 5abb1baa8e | |
Holger Koenemann | 13f8c8d486 | |
Holger Koenemann | df8208b1b0 | |
Holger | a1e9bfb7cd | |
Holger | 19b083d0c5 | |
Holger | a0a00cba6b | |
IanDelMar | 362a472e7b | |
Gary Kealy | 0c9cfc3a8c | |
Gary Kealy | 600eb39883 | |
Thomas A. Reinert | 30103651df | |
Jake Weston | 40029f5072 | |
Thomas A. Reinert | cd49f5adfc | |
Thomas A. Reinert | 369a06d182 | |
Thomas A. Reinert | ab9c9a3c78 | |
IanDelMar | 2334f6a9c4 | |
Holger Koenemann | 577eea7f47 | |
Holger | 4becdb504c | |
Chris Allen | 447674355c | |
Holger Koenemann | ef84a7cac6 | |
Holger Koenemann | 5f9b8b22a7 | |
Holger Koenemann | 01af1b4da5 | |
Holger | 2d80cf410b | |
Holger | a09fcbecf3 | |
Holger | 1e90d3c65f | |
IanDelMar | 6076c91553 | |
IanDelMar | 0e76b4008d | |
kelsS | b179eaffe4 | |
kelsS | 0ea47933a1 | |
kelsS | 2f5e0182e2 | |
kelsS | 7475ec18da | |
IanDelMar | 8b841fb3e2 | |
Holger Koenemann | bbae68f083 | |
Holger | 8af84c1e76 | |
Holger | c293c82d7d | |
Holger Koenemann | cac4962ddb | |
Chris Bibby | b8766a701f | |
Chris Bibby | 1fe315cfa2 | |
Chris Bibby | c500160d12 | |
Chris Bibby | a28c44d0ec | |
Chris Bibby | 7d8e00f36e | |
Chris Bibby | cb67c41f1e | |
Chris Bibby | d60c6d4428 | |
Chris Bibby | 1ab2f98382 | |
Chris Bibby | 89f250974d | |
Holger Koenemann | a4f20ac9bd | |
Holger Koenemann | 705bd724d9 | |
Holger Koenemann | 9f848d858f | |
Holger Koenemann | 401bcc9c6f | |
Holger | 317c136a60 | |
Ken Eucker | fc0893993e | |
KoenemannH | fa0bef5e72 | |
Holger | 74b0d072d3 | |
Marie Comet | f663655b7a | |
Holger | 17eb1c5b18 | |
Holger | 98b2107d33 | |
Noel Springer | 85ef63cec4 | |
Lon Koenig | 6fcf1e9720 | |
KoenemannH | e6c9552f8b | |
KoenemannH | f57fad69a5 | |
KoenemannH | 854098f7a7 | |
KoenemannH | c33e8f6bae | |
KoenemannH | d3ca94654d | |
Holger | a914febe0e | |
Holger | 56bf3cb503 | |
Holger | f2021f6ccc | |
Holger | 0aef68a069 | |
Stefan Grassberger | f47ade3038 | |
Stefan Grassberger | 430a238ca5 | |
Stefan Grassberger | f7c176e800 | |
Joao Figueiredo | 57527a3d6d | |
Davor Lonzaric | 3006f4a217 | |
Davor Lonzaric | 11a6180a7f | |
IanDelMar | 6f0462b551 | |
IanDelMar | 89464f0d4f | |
Holger | 7c66344f16 | |
Noel Springer | 3effcb7399 | |
Davor Lonzaric | cc82a79616 | |
Holger | 1c806b7e57 | |
Holger | d7e1e8bc6b | |
Christian Oliff | 67f8dbc75e | |
IanDelMar | 88cf1467d2 | |
Thomas A. Reinert | 02c6cf3484 | |
IanDelMar | 52b028e1be | |
Holger Könemann | e8a141560b | |
Holger Könemann | 9a30e9d5de | |
Holger Könemann | 3a21223c4d | |
Holger Könemann | aa90bee3e3 | |
Holger Könemann | 912ccf8edb | |
Holger | f3c23d0a8b | |
Holger | c85f9e08e9 | |
Holger | f9f7b2b176 | |
IanDelMar | 9779563248 | |
IanDelMar | f5edb00c9f | |
IanDelMar | c014366a48 | |
IanDelMar | 77bc390ee7 | |
IanDelMar | 8bfabce83d | |
Noel Springer | 1db1455322 | |
Holger | f1d17707db | |
Holger | fecf45dff4 | |
Holger | b9fc5ef0e1 | |
Holger | bf8cc921a9 | |
Holger | c857dfb2ef | |
KoenemannH | c88bd9256d | |
Davor Lonzaric | bd659d9456 | |
Stefan Grassberger | cf4d843cde | |
IanDelMar | 59407d69ef | |
IanDelMar | 47b5893376 | |
IanDelMar | 97cde9c3c5 | |
IanDelMar | 7ee9cfd18e | |
IanDelMar | b653d6f2ce | |
IanDelMar | c8274df833 | |
IanDelMar | cf15b3eb76 | |
IanDelMar | 8ecfeb4436 | |
IanDelMar | b1f541fcfc | |
IanDelMar | ee459e936b | |
IanDelMar | 024ddea2ab | |
IanDelMar | 9c8be5118d | |
IanDelMar | eff5910640 | |
IanDelMar | 76a5c0fd36 | |
IanDelMar | d94e811686 | |
IanDelMar | 5831ba385b | |
IanDelMar | 35096acab3 | |
IanDelMar | ba909450b6 | |
IanDelMar | 7835682f36 | |
IanDelMar | 4bbad708f4 | |
IanDelMar | 5237c66a47 | |
IanDelMar | b7a4f2359e | |
IanDelMar | ce43038054 | |
IanDelMar | 00ead17491 | |
IanDelMar | cfa59e691c | |
IanDelMar | 05bc567e5d | |
IanDelMar | 623d970421 | |
IanDelMar | 63870cc487 | |
IanDelMar | c038da308a | |
IanDelMar | 56035343db | |
IanDelMar | 5ff95a5989 | |
IanDelMar | c71ba33ea7 | |
IanDelMar | 7bfca59655 | |
IanDelMar | 23f7c2ab4d | |
IanDelMar | d979bf8a5a | |
IanDelMar | 51c5f93019 | |
IanDelMar | 4b3a789172 | |
IanDelMar | 95767decb0 | |
Holger | 05cbe7bedf | |
KoenemannH | 1208774d79 | |
IanDelMar | fd85a081d5 | |
Holger | 9ce8163f8f | |
IanDelMar | 1637233d97 | |
Holger Könemann | 9aecf60a75 | |
Holger Könemann | 4060ecd88b | |
Holger Könemann | 2409475185 | |
Holger Könemann | c3fc43d115 | |
Holger Könemann | 70c54e186a | |
Holger Könemann | 8695211a39 | |
Holger | 442fcb5241 | |
Noel Springer | acaaefcb21 | |
Holger | 125c4a0642 | |
Gary Kealy | b409160912 | |
Holger | c26648ad97 | |
IanDelMar | 685bda2aa3 | |
Holger | 8b38442bab | |
Holger | dc197a621e | |
Holger | e7d696a84e | |
Holger | 1e0798d7e1 | |
redpik | 7b38e7422d | |
IanDelMar | e96325d23d | |
gillespieza | ece6f9373f | |
Holger | 94fb26825f | |
Holger | e683c12882 | |
Holger | 5b23f36a25 | |
William Patton | 607072acd1 | |
IanDelMar | ceb5554fd0 | |
IanDelMar | 5c9f276f76 | |
IanDelMar | 38b7aa2e9a | |
IanDelMar | fc6094b64e | |
Holger | 0dbfc1728a | |
Holger | 4c778ed270 | |
Salman Abbas | be9d3db4ec | |
IanDelMar | b6af4ac452 | |
IanDelMar | 088830154e | |
IanDelMar | 7783b14cb3 | |
IanDelMar | 5ea71dac54 | |
IanDelMar | ed0067a12f | |
IanDelMar | eaacf2f606 | |
Holger | c810218613 | |
Varun Batra | 0bc4b340cf | |
Holger Könemann | e9e62399e2 | |
Holger | 5dd5a1b6ce | |
Gary Kealy | 9dacaa8cf5 | |
Holger Könemann | b41d693d93 | |
Holger Könemann | d4c730af48 | |
Holger | de08054b71 | |
Holger | 6e9f4022c0 | |
Holger | 0b9fbe9830 | |
IanDelMar | 0090d78e57 | |
IanDelMar | 45c9d1adb7 | |
Holger | 613f16e462 | |
Holger | 520e8c44cb | |
Holger | e3ff0893fd | |
Holger | 9adb5d7ddc | |
Thomas A. Reinert | 43fdff37d6 | |
Thomas A. Reinert | da7e1b16b4 | |
IanDelMar | 43127350b5 | |
IanDelMar | 0906f10e5d | |
IanDelMar | cc6d8727c7 | |
IanDelMar | 8be788a5f4 | |
IanDelMar | 1a78061efd | |
IanDelMar | 2f1228a812 | |
Johan Nielsen | 3b4540d866 | |
Holger | 35eaec8dd9 | |
IanDelMar | afeaa14b82 | |
Holger | e9f2b82423 | |
Holger | 9cfc628afe | |
Holger | 186065401b | |
IanDelMar | f24e325341 | |
IanDelMar | eb611ede1f | |
Holger | 699bdef17f | |
Holger | f39b101f2f | |
Holger | 074c064025 | |
Holger | 7b7c3b7904 | |
Holger | e12060837c | |
Holger | f1b7f260c3 | |
IanDelMar | 3723546d81 | |
IanDelMar | 6678261a81 | |
Holger | 56bc68c30b | |
Holger | 8f8d707a96 | |
Holger | 6496436c80 | |
Benjamin PONGY | 7d4f3304a6 | |
IanDelMar | eda386549d | |
IanDelMar | a2eaaed12c | |
IanDelMar | cee0bd5ee3 | |
Benjamin PONGY | 36d7e8ac9b | |
Benjamin PONGY | 2593581e53 | |
Dave Mackey | 5c7db61572 | |
Dave Mackey | ee1b4ebe3e | |
Noel Springer | 14f199b250 | |
Johan Nielsen | 3a55780298 | |
Holger Könemann | acb4fcb186 | |
KoenemannH | 521548ee59 | |
Dave Mackey | c528c96a7c | |
Holger Könemann | cebefb96b1 | |
Holger Könemann | 200379c1b7 | |
Holger Könemann | 3d72fa345b | |
Joao Figueiredo | b34de22a1c | |
Holger | d2604dab6f | |
KoenemannH | 9407ee0d96 | |
KoenemannH | 751983807a | |
Holger | be9c91a767 | |
KoenemannH | 1c5db85d0c | |
William Patton | efabf58b1d | |
Vincent van Bergen | 5930e41703 | |
William Patton | ddd8bacca8 | |
Joao Figueiredo | 790e91feea | |
Noel Springer | 4b8bbdd2f7 | |
KoenemannH | dee0292777 | |
KoenemannH | abb2af1d9c | |
KoenemannH | 6bc5c14ee8 | |
Holger Könemann | 7cdaeddef7 | |
Joao Figueiredo | 7b656700ad | |
Dave Mackey | f644091fac |
|
@ -0,0 +1,10 @@
|
|||
# please see https://github.com/browserslist/browserslist for more info
|
||||
# These settings can be changed depending on what browsers your project is supporting
|
||||
|
||||
>= 0.01%
|
||||
Last 5 versions
|
||||
last 8 iOS versions
|
||||
Firefox >= 28
|
||||
IE 10 # sorry
|
||||
IE 11 # sorry
|
||||
dead # sorry
|
|
@ -0,0 +1,21 @@
|
|||
# This file is for unifying the coding style for different editors and IDEs
|
||||
# editorconfig.org
|
||||
|
||||
# WordPress Coding Standards
|
||||
# https://make.wordpress.org/core/handbook/coding-standards/
|
||||
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
indent_style = tab
|
||||
|
||||
[{package.json,*.yml}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[{*.txt,wp-config-sample.php}]
|
||||
end_of_line = crlf
|
|
@ -43,8 +43,8 @@ People *love* thorough bug reports. I'm not even kidding.
|
|||
|
||||
## Use a Consistent Coding Style
|
||||
|
||||
* 2 spaces for indentation rather than tabs
|
||||
* Use ./.editorconfig if your editor supports it
|
||||
* Stick to the [WordPress Coding Standards](https://make.wordpress.org/core/handbook/best-practices/coding-standards/)
|
||||
* Use [./.editorconfig](https://github.com/understrap/understrap/blob/master/.editorconfig) if your editor supports it
|
||||
<!-- * You can try running `npm run lint` for style unification -->
|
||||
|
||||
## License
|
|
@ -25,3 +25,4 @@ Thumbs.db
|
|||
*.bak
|
||||
|
||||
*.swp
|
||||
.idea/
|
||||
|
|
1
.jscsrc
1
.jscsrc
|
@ -2,7 +2,6 @@
|
|||
"preset": "wordpress",
|
||||
"fileExtensions": [ ".js" ],
|
||||
"excludeFiles": [
|
||||
"js/**.min.js",
|
||||
"js/**.min.js",
|
||||
"src/**/*.js",
|
||||
"js/core.js",
|
||||
|
|
34
.travis.yml
34
.travis.yml
|
@ -2,15 +2,15 @@
|
|||
# @link https://travis-ci.org/
|
||||
|
||||
# For use with the UnderStrap WordPress theme
|
||||
# @link https://github.com/holger1411/understrap
|
||||
# @link https://github.com/understrap/understrap
|
||||
|
||||
# Declare project language and PHP versions to test against.
|
||||
# @link http://about.travis-ci.org/docs/user/languages/php/
|
||||
# @link https://docs.travis-ci.com/user/languages/php/
|
||||
language: php
|
||||
|
||||
# Declare versions of PHP to use. Use one decimal max.
|
||||
php:
|
||||
- "7.0"
|
||||
- "7.3"
|
||||
- "5.6"
|
||||
|
||||
# Ditch sudo and use containers.
|
||||
|
@ -21,7 +21,7 @@ sudo: false
|
|||
# Declare which versions of WordPress to test against.
|
||||
# Also declare whether or not to test in Multisite.
|
||||
env:
|
||||
# Trunk (current version in development is 4.7)
|
||||
# Trunk (current version in development is 5.3)
|
||||
# @link https://github.com/WordPress/WordPress
|
||||
- WP_VERSION=master WP_MULTISITE=0
|
||||
|
||||
|
@ -29,12 +29,18 @@ env:
|
|||
# e.g. copy database configurations, environment variables, etc.
|
||||
# Failures in this section will result in build status 'errored'.
|
||||
before_script:
|
||||
# Speed up build time by disabling Xdebug.
|
||||
- phpenv config-rm xdebug.ini || echo 'No xdebug config.'
|
||||
# Set up temporary paths.
|
||||
- export PHPCS_DIR=/tmp/phpcs
|
||||
- export WPCS_DIR=/tmp/wpcs
|
||||
- export PHPCOMPAT_DIR=/tmp/phpcompatibility
|
||||
# Set up WordPress installation.
|
||||
- export WP_DEVELOP_DIR=/tmp/wordpress/
|
||||
- mkdir -p $WP_DEVELOP_DIR
|
||||
# Use the Git mirror of WordPress.
|
||||
- git clone --depth=1 --branch="$WP_VERSION" git://develop.git.wordpress.org/ $WP_DEVELOP_DIR
|
||||
# Set up Twenty Seventeen theme information.
|
||||
# Set up UnderStrap theme information.
|
||||
- theme_slug=$(basename $(pwd))
|
||||
- theme_dir=$WP_DEVELOP_DIR/src/wp-content/themes/$theme_slug
|
||||
- cd ..
|
||||
|
@ -47,16 +53,16 @@ before_script:
|
|||
- sed -i "s/yourusernamehere/root/" wp-tests-config.php
|
||||
- sed -i "s/yourpasswordhere//" wp-tests-config.php
|
||||
# Create WordPress database.
|
||||
- mysql -e 'CREATE DATABASE wordpress_test;' -uroot
|
||||
#- mysql -u root -e "CREATE DATABASE wordpress_test;"
|
||||
# Install CodeSniffer for WordPress Coding Standards checks.
|
||||
- mkdir php-codesniffer && curl -L https://github.com/squizlabs/PHP_CodeSniffer/archive/2.7.0.tar.gz | tar xz --strip-components=1 -C php-codesniffer
|
||||
- git clone -b master --depth 1 https://github.com/squizlabs/PHP_CodeSniffer.git $PHPCS_DIR
|
||||
# Install WordPress Coding Standards.
|
||||
- mkdir wordpress-coding-standards && curl -L https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/archive/0.10.0.tar.gz | tar xz --strip-components=1 -C wordpress-coding-standards
|
||||
# Hop into CodeSniffer directory.
|
||||
- cd php-codesniffer
|
||||
# Set install path for WordPress Coding Standards
|
||||
- git clone -b master --depth 1 https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git $WPCS_DIR
|
||||
# Install PHP Compatibility sniffs.
|
||||
- git clone -b master --depth 1 https://github.com/wimg/PHPCompatibility.git $PHPCOMPAT_DIR
|
||||
# Set install path for PHPCS sniffs.
|
||||
# @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941
|
||||
- scripts/phpcs --config-set installed_paths ../wordpress-coding-standards
|
||||
- $PHPCS_DIR/bin/phpcs --config-set installed_paths $WPCS_DIR,$PHPCOMPAT_DIR
|
||||
# Hop into themes directory.
|
||||
- cd $theme_dir
|
||||
# After CodeSniffer install you should refresh your path.
|
||||
|
@ -65,7 +71,7 @@ before_script:
|
|||
# @link http://jscs.info/
|
||||
- npm install -g jscs
|
||||
# Install JSHint, a JavaScript Code Quality Tool
|
||||
# @link http://jshint.com/docs/
|
||||
# @link https://jshint.com/docs/
|
||||
- npm install -g jshint
|
||||
- wget https://develop.svn.wordpress.org/trunk/.jshintrc
|
||||
|
||||
|
@ -88,4 +94,4 @@ script:
|
|||
# -n flag: Do not print warnings (shortcut for --warning-severity=0)
|
||||
# --standard: Use WordPress as the standard.
|
||||
# --extensions: Only sniff PHP files.
|
||||
- $WP_DEVELOP_DIR/php-codesniffer/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php --ignore=*/woocommerce/*,*/src/*
|
||||
- $PHPCS_DIR/bin/phpcs -p -s -v -n . --extensions=php --ignore=*/woocommerce/*,*/src/*
|
||||
|
|
38
404.php
38
404.php
|
@ -1,15 +1,16 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying 404 pages (not found).
|
||||
* The template for displaying 404 pages (not found)
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
<div class="wrapper" id="error-404-wrapper">
|
||||
|
@ -26,15 +27,13 @@ $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
|||
|
||||
<header class="page-header">
|
||||
|
||||
<h1 class="page-title"><?php esc_html_e( 'Oops! That page can’t be found.',
|
||||
'understrap' ); ?></h1>
|
||||
<h1 class="page-title"><?php esc_html_e( 'Oops! That page can’t be found.', 'understrap' ); ?></h1>
|
||||
|
||||
</header><!-- .page-header -->
|
||||
|
||||
<div class="page-content">
|
||||
|
||||
<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>
|
||||
<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>
|
||||
|
||||
<?php get_search_form(); ?>
|
||||
|
||||
|
@ -48,13 +47,15 @@ $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
|||
|
||||
<ul>
|
||||
<?php
|
||||
wp_list_categories( array(
|
||||
'orderby' => 'count',
|
||||
'order' => 'DESC',
|
||||
'show_count' => 1,
|
||||
'title_li' => '',
|
||||
'number' => 10,
|
||||
) );
|
||||
wp_list_categories(
|
||||
array(
|
||||
'orderby' => 'count',
|
||||
'order' => 'DESC',
|
||||
'show_count' => 1,
|
||||
'title_li' => '',
|
||||
'number' => 10,
|
||||
)
|
||||
);
|
||||
?>
|
||||
</ul>
|
||||
|
||||
|
@ -81,8 +82,9 @@ $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
|||
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #error-404-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
319
CHANGELOG.md
319
CHANGELOG.md
|
@ -1,3 +1,288 @@
|
|||
- ** Release 0.9.4 June 30th 2019 **
|
||||
- ** Release 0.9.3 May 8th 2019 **
|
||||
- hotfix release
|
||||
|
||||
- ** Release 0.9.2 May 8th 2019 **
|
||||
Commits on Feb 16, 2019
|
||||
@holgerkoenemann
|
||||
holgerkoenemann
|
||||
Rebuild header
|
||||
e6c9552
|
||||
|
||||
Commits on Feb 19, 2019
|
||||
Lon Koenig
|
||||
Lon Koenig
|
||||
Make understrap_mobile_web_app_meta() and understrap_pingback() plugg…
|
||||
6fcf1e9
|
||||
|
||||
Commits on Feb 22, 2019
|
||||
Noel Springer
|
||||
Noel Springer
|
||||
Update form-reset-password template for Woocommerce 3.5.5
|
||||
85ef63c
|
||||
|
||||
Commits on Feb 27, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #921 from schnoggo/master
|
||||
98b2107
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #922 from noelspringer/woocommerce-template-update
|
||||
17eb1c5
|
||||
|
||||
Commits on Mar 08, 2019
|
||||
@MarieComet
|
||||
MarieComet
|
||||
Add responsive embed support
|
||||
f663655
|
||||
|
||||
Commits on Mar 11, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #935 from understrap/MarieComet-responsive-embed-s…
|
||||
74b0d07
|
||||
|
||||
Commits on Mar 20, 2019
|
||||
@holgerkoenemann
|
||||
holgerkoenemann
|
||||
Fixing problem with tiny col on mobile
|
||||
fa0bef5
|
||||
|
||||
Commits on Apr 11, 2019
|
||||
@KenEucker
|
||||
KenEucker
|
||||
Dependencies updates. Migrated to gulp4. Added compilation task.
|
||||
fc08939
|
||||
|
||||
Commits on Apr 14, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #953 from KenEucker/master
|
||||
317c136
|
||||
@holger1411
|
||||
holger1411
|
||||
Update gulpfile.js
|
||||
401bcc9
|
||||
@holger1411
|
||||
holger1411
|
||||
Fixing #946
|
||||
9f848d8
|
||||
@holger1411
|
||||
holger1411
|
||||
Update enqueue.php
|
||||
705bd72
|
||||
|
||||
Commits on Apr 17, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Update BS version #no
|
||||
a4f20ac
|
||||
|
||||
Commits on Apr 19, 2019
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
initial
|
||||
89f2509
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
Woocommerce 3.6.1 template changes
|
||||
1ab2f98
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
Woocommerce 3.6.1 template changes
|
||||
d60c6d4
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
woocommerce 3.6.1 template changes
|
||||
cb67c41
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
woocommerce 3.6.1 template changes
|
||||
7d8e00f
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
woocommerce 3.6.1 template changes
|
||||
a28c44d
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
woocommerce 3.6.1 template changes
|
||||
c500160
|
||||
Commits on Apr 20, 2019
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
Woocommerce 3.6.1 updates
|
||||
1fe315c
|
||||
Chris Bibby
|
||||
Chris Bibby
|
||||
Merge branch 'woocommerce-3.6.1-updates' of https://github.com/chrism…
|
||||
b8766a7
|
||||
|
||||
Commits on Apr 22, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Update Woocommerce version info
|
||||
cac4962
|
||||
|
||||
Commits on Apr 28, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge branch 'master' into woocommerce-3.6.1-updates
|
||||
c293c82
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #955 from chrismb75/woocommerce-3.6.1-updates
|
||||
8af84c1
|
||||
@holger1411
|
||||
holger1411
|
||||
Fixing watch-bs task
|
||||
bbae68f
|
||||
|
||||
Commits on Apr 29, 2019
|
||||
@IanDelMar
|
||||
IanDelMar
|
||||
WooCommerce backward compatibility. Fix for #961
|
||||
8b841fb
|
||||
|
||||
Commits on Apr 30, 2019
|
||||
@kelsS
|
||||
kelsS
|
||||
removed bower.json since bower is no longer used
|
||||
7475ec1
|
||||
@kelsS
|
||||
kelsS
|
||||
add php to allow the hero widgets to show on the fullwidth page templ…
|
||||
2f5e018
|
||||
|
||||
Commits on May 01, 2019
|
||||
@kelsS
|
||||
kelsS
|
||||
add babel, gulp-babel, autoprefixer, and gulp-postcss as dev dependen…
|
||||
0ea4793
|
||||
@kelsS
|
||||
kelsS
|
||||
add babel core, gulp-babel, autoprefixer, and gulp-postcss to gulp pr…
|
||||
b179eaf
|
||||
@IanDelMar
|
||||
IanDelMar
|
||||
Add support for wp_body_open
|
||||
0e76b40
|
||||
|
||||
Commits on May 03, 2019
|
||||
@IanDelMar
|
||||
IanDelMar
|
||||
Improve code simplicity
|
||||
6076c91
|
||||
|
||||
Commits on May 08, 2019
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #967 from IanDelMar/wp_body_open
|
||||
1e90d3c
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #965 from kelsS/master
|
||||
a09fcbe
|
||||
@holger1411
|
||||
holger1411
|
||||
Merge pull request #963 from IanDelMar/patch-6
|
||||
2d80cf4
|
||||
@holger1411
|
||||
holger1411
|
||||
Re-add customizer.js
|
||||
01af1b4
|
||||
@holger1411
|
||||
holger1411
|
||||
Clean rebuild
|
||||
5f9b8b2
|
||||
|
||||
|
||||
- ** Release 0.9.1 February 15th, 2019 - SECURITY UPDATE **
|
||||
- Update to Bootstrap 4.3.1 - Fixes a XSS vulnerability in BS 4.3.0
|
||||
|
||||
- ** Release 0.9.0 February 12th, 2019 **
|
||||
- Update to Bootstrap 4.3.0
|
||||
- Update both-sidebarspage.php - thx @stevygee
|
||||
- Update left-sidebar.php - thx @stevygee
|
||||
- Update right-sidebars.php - thx @stevygee
|
||||
- Add deprecated.php - thx @IanDelMar
|
||||
- Escape translation fix - thx @IanDelMar
|
||||
- Update WooCommerce templates to 3.5.3
|
||||
- HTTPS Links - thx @Noel Springer
|
||||
- Adding Slovene Translation - thx @Fatshape
|
||||
- Update pt_Pt translation - thx @jfig
|
||||
|
||||
- ** Release 0.8.9 December 28th 2018 **
|
||||
- Update to Bootstrap 4.2.1
|
||||
- Fix for #796 - thx @IanDelMar
|
||||
- Add .editorconfig - thx @IanDelMar
|
||||
- Clean up gulp file and package.json according to #853
|
||||
- Conditionally add pingback - thx @IanDelMar
|
||||
- Add mobile-web-app meta as action - thx @IanDelMar
|
||||
- Fixing spacing and indentation on a lot of spots - thx @IanDelMar
|
||||
- Update comments.php - thx @IanDelMar
|
||||
- Update sidebar-statichero.php - thx @IanDelMar
|
||||
- Update several .php files - thx @IanDelMar
|
||||
- Fix dropdown when setting depth=0 in wp_nav_menu - thx @stevygee
|
||||
- WooCommerce 3.5.2 update - thx @Fatshape
|
||||
- Fix for issue #876 - thx @Noel Springer
|
||||
|
||||
|
||||
- ** Release 0.8.8 November 1st 2018 **
|
||||
- Refactor functions.php - Thx @ylkyrg
|
||||
- Fix for #808 - Thx @VarunBatraIT
|
||||
- Add filters for posted on/by - Thx @IanDelMar
|
||||
- Adjust byline for hidden date case - Thx @IanDelMar
|
||||
- Fixed typo in wp_enqueue_style() call in inc/wpcom.php - Thx @Salmatron
|
||||
- Add woocommerce product gallery slider width fix - Thx @IanDelMar
|
||||
- Prevent modifications to read_more affecting dashboard expected behavior - thx @pattonwebz
|
||||
- Tidy up left sidebar check - thx @gillespieza
|
||||
- Add gulp default talk (watcher) - thx @redpik
|
||||
- Remove $sidebar_pos - Thx @IanDelMar
|
||||
- Update Woocommerce templates for WC 3.5.x - thx @ Noel Springer
|
||||
|
||||
|
||||
- ** Release 0.8.7 September 11th 2018 **
|
||||
- Spelling corrections thx @davidshq
|
||||
- Updated pt_PT Translation thx @jfig
|
||||
- Code cleanup thx @pattonwebz
|
||||
- Using bootstrap.bundle.js instead of bootstrapjs and popper.js
|
||||
- Update widgets.php thx @0dp
|
||||
- Update form-coupon thx @Noel Springer
|
||||
- Remove the X-UA-Compatible meta tag thx @redpik
|
||||
- Fixing typo in FR text thx @redpik
|
||||
- Create hooks.php thx @IanDelMar
|
||||
- Using site info hook thx @IanDelMar
|
||||
- Fix function_exists & parenthesis thx @IanDelMar
|
||||
- Fix for Issue #769 thx @IanDelMar
|
||||
- searchform.php replace assistive-text by sr-only thx @IanDelMar
|
||||
- Update gulpconfig.json thx @0dp
|
||||
- Fix for issue #785 thx @IanDelMar
|
||||
- sidebar-footerfull.php: incorrect spacing thx @IanDelMar
|
||||
- Stick to single quotes & other minor changes thx @IanDelMar
|
||||
- Define .screen-reader-text thx @IanDelMar
|
||||
- Focusable 'Skip to content' thx @IanDelMar
|
||||
- Prevent direct access thx @IanDelMar
|
||||
|
||||
- ** Release 0.8.6 July 26th 2018 **
|
||||
- Re - Release
|
||||
|
||||
- ** Release 0.8.5 July 26th 2018 **
|
||||
- Update to Bootstrap 4.1.3
|
||||
|
||||
|
||||
- ** Release 0.8.4 July 16th 2018 ** Maintenace Release:
|
||||
- Update to Bootstrap 4.1.2
|
||||
- fixing sidebar.php problem
|
||||
- Revert to Gulp 3.x support
|
||||
|
||||
|
||||
- ** Maintenance Release 0.8.4 July 16th 2018 **
|
||||
- Update to Bootstrap 4
|
||||
- fixing sidebar.php problem
|
||||
- Revert to Gulp 3.x support
|
||||
|
||||
|
||||
- ** Release 0.8.3 July 3rd 2018 **
|
||||
- Update to Bootstrap 4.1.1
|
||||
- Update to Gulp 4
|
||||
|
@ -12,7 +297,7 @@
|
|||
- WooCommerce 3.4.0 update - Thx @ZacharyElkins
|
||||
- Organize sidebar files into loop-templates directory - Thx @axlright
|
||||
- Update package.json
|
||||
- POT file and Russian translation update - Thx @edkozuto
|
||||
- POT file and Russian translation update - Thx @edkozuto
|
||||
|
||||
|
||||
- ** Release 0.8.2 April 11th 2018 **
|
||||
|
@ -64,7 +349,7 @@
|
|||
- Hotfix release
|
||||
|
||||
|
||||
- ** Release 0.6.11 December 11th 2017 **
|
||||
- ** Release 0.6.11 December 11th 2017 **
|
||||
- Fixing WooCommerce functions
|
||||
- Fixing sanitizing, escaping and prefix´s issues
|
||||
- Fixing customizer settings
|
||||
|
@ -98,20 +383,20 @@
|
|||
- Update page.php - thx @Vishal-Deshpande
|
||||
- Fixing colormap problem with beta 2
|
||||
- Making navwalker function pluggable - Thx @bruceconlon
|
||||
- Adding WordPress title attribute - Thx @JDVirtual and @Thomas-A-Reinert
|
||||
- Fixing comments in _theme_variable.scss - thx @ianwyllie
|
||||
- Adding WordPress title attribute - Thx @JDVirtual and @Thomas-A-Reinert
|
||||
- Fixing comments in theme_variable.scss - thx @ianwyllie
|
||||
- Adding spaces the separate "posted on" and "edited" timestamps - Thx @bruceconlon
|
||||
|
||||
|
||||
|
||||
- ** Release 0.6.6 October 23h 2017 **
|
||||
- Update to Bootstrap 4 Beta 2
|
||||
- Moving hamburger icon to the right by default
|
||||
- Fixing issue #392
|
||||
- Fixing issue #392
|
||||
- Gramma and typo fixes
|
||||
- Making inc/security.php hookable
|
||||
- Variable product ajax_add_to_cart fix
|
||||
- Update Woocommerce 3.2.1 compatibility
|
||||
|
||||
|
||||
|
||||
- ** Release 0.6.5 August 17h 2017 **
|
||||
- Hot fix release
|
||||
|
@ -166,23 +451,23 @@
|
|||
- ** 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
|
||||
- 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
|
||||
- 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
|
||||
- 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
|
||||
- Updating inc/template-tags.php from s
|
||||
- Fixing W3C validator issues
|
||||
- Removing cleancss gulp task from cssnano task sequence due to performance issues
|
||||
|
||||
|
@ -253,7 +538,7 @@
|
|||
- 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
|
||||
|
@ -340,7 +625,7 @@
|
|||
- ** 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.
|
||||
- Removing s SASS ... no need for basic styling. Thats Bootstrap´s job.
|
||||
|
||||
|
||||
- ** 0.3.1 AUG. 12th 2015**
|
||||
|
@ -369,4 +654,4 @@
|
|||
- Adding Jasny Off-Canvas nav and Owl.Carousel Slider script
|
||||
- Enqueue scipts and styled dynamically
|
||||
|
||||
- ** 0.1 Dec. 10th 2014 - First commit**
|
||||
- ** 0.1 Dec. 10th 2014 - First commit**
|
||||
|
|
21
README.md
21
README.md
|
@ -1,4 +1,8 @@
|
|||
Travis build: [![Build Status](https://travis-ci.org/understrap/understrap.svg?branch=master)](https://travis-ci.org/understrap/understrap)
|
||||
[![Build Status](https://api.travis-ci.org/understrap/understrap.svg?branch=master)](https://travis-ci.org/understrap/understrap)
|
||||
[![Wordpress Theme Version](https://img.shields.io/wordpress/theme/v/understrap.svg)](https://wordpress.org/themes/understrap)
|
||||
[![Wordpress Theme Active Installs](https://img.shields.io/wordpress/theme/installs/understrap.svg)](https://wordpress.org/themes/understrap/)
|
||||
[![Github Last Commit](https://img.shields.io/github/last-commit/understrap/understrap)](https://github.com/understrap/understrap/commits/master)
|
||||
[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0)
|
||||
|
||||
#### See: [Official Demo](https://understrap.com/understrap) | Read: [Official Docs Page](https://understrap.github.io/)
|
||||
|
||||
|
@ -8,6 +12,8 @@ Website: [https://understrap.com](https://understrap.com)
|
|||
|
||||
Child Theme Project: [https://github.com/understrap/understrap-child](https://github.com/understrap/understrap-child)
|
||||
|
||||
OverStrap Child Themes: [https://understrap.com/overstrap/](https://understrap.com/overstrap/)
|
||||
|
||||
## About
|
||||
|
||||
I’m a huge fan of Underscores, Bootstrap, and Sass. Why not combine these into a solid WordPress Theme Framework? That’s what UnderStrap is. You can use it as a starter theme and build your own theme on top of it. Or you can use it as a parent theme and create your own child theme for UnderStrap.
|
||||
|
@ -31,7 +37,7 @@ See [changelog](CHANGELOG.md)
|
|||
- Jetpack ready.
|
||||
- WooCommerce support.
|
||||
- Contact Form 7 support.
|
||||
- [Child Theme](https://github.com/holger1411/understrap-child) ready.
|
||||
- [Child Theme](https://github.com/understrap/understrap-child) ready.
|
||||
- Translation ready.
|
||||
|
||||
## Starter Theme + HTML Framework = WordPress Theme Framework
|
||||
|
@ -53,14 +59,14 @@ Some basics about the Sass and CSS files that come with UnderStrap:
|
|||
@import "theme/theme"; // 5. Add your styles into this file
|
||||
```
|
||||
|
||||
- Don’t edit the number 2-4 files/filesets listed above or you won’t be able to update Understrap without overwriting your own work!
|
||||
- Your design goes into: `/sass/theme`.
|
||||
- Add your styles to the `/sass/theme/_theme.scss` file
|
||||
- Don’t edit the number 2-4 files/filesets listed above or you won’t be able to update UnderStrap without overwriting your own work!
|
||||
- Your design goes into: `/sass/theme`.
|
||||
- Add your styles to the `/sass/theme/_theme.scss` file
|
||||
- And your variables to the `/sass/theme/_theme_variables.scss`
|
||||
- Or add other .scss files into it and `@import` it into `/sass/theme/_theme.scss`.
|
||||
|
||||
## Installation
|
||||
There are several ways to install UnderStrap. We'll look at three of them: (1) classic install by uploading UnderStrap to a WordPress install, (2) using npm, and (3) using the theme directory in WordPress.
|
||||
There are several ways to install UnderStrap. We'll look at three of them: (1) classic install by uploading UnderStrap to a WordPress install, (2) using npm, and (3) using the theme directory in WordPress.
|
||||
|
||||
### Classic install
|
||||
- Download the understrap folder from GitHub or from [https://understrap.com](https://understrap.com)
|
||||
|
@ -147,6 +153,3 @@ 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)
|
||||
|
|
59
archive.php
59
archive.php
|
@ -1,17 +1,18 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying archive pages.
|
||||
* The template for displaying archive pages
|
||||
*
|
||||
* Learn more: http://codex.wordpress.org/Template_Hierarchy
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
get_header();
|
||||
?>
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
<?php
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
get_header();
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
<div class="wrapper" id="archive-wrapper">
|
||||
|
@ -25,19 +26,19 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<main class="site-main" id="main">
|
||||
|
||||
<?php if ( have_posts() ) : ?>
|
||||
|
||||
<?php
|
||||
if ( have_posts() ) {
|
||||
?>
|
||||
<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 /* Start the Loop */ ?>
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
|
||||
<?php
|
||||
<?php
|
||||
// Start the loop.
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
||||
/*
|
||||
* Include the Post-Format-specific template for the content.
|
||||
|
@ -45,28 +46,26 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
* 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; ?>
|
||||
}
|
||||
} else {
|
||||
get_template_part( 'loop-templates/content', 'none' );
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
<!-- The pagination component -->
|
||||
<?php understrap_pagination(); ?>
|
||||
<?php
|
||||
// Display the pagination component.
|
||||
understrap_pagination();
|
||||
// Do the right sidebar check.
|
||||
get_template_part( 'global-templates/right-sidebar-check' );
|
||||
?>
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
</div><!-- .row -->
|
||||
|
||||
</div> <!-- .row -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #archive-wrapper -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
115
author.php
115
author.php
|
@ -1,16 +1,18 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying the author pages.
|
||||
* The template for displaying the author pages
|
||||
*
|
||||
* Learn more: https://codex.wordpress.org/Author_Templates
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
<div class="wrapper" id="author-wrapper">
|
||||
|
||||
|
@ -26,71 +28,78 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
<header class="page-header author-header">
|
||||
|
||||
<?php
|
||||
$curauth = ( isset( $_GET['author_name'] ) ) ? get_user_by( 'slug',
|
||||
$author_name ) : get_userdata( intval( $author ) );
|
||||
if ( get_query_var( 'author_name' ) ) {
|
||||
$curauth = get_user_by( 'slug', get_query_var( 'author_name' ) );
|
||||
} else {
|
||||
$curauth = get_userdata( intval( $author ) );
|
||||
}
|
||||
?>
|
||||
|
||||
<h1><?php esc_html_e( 'About:', 'understrap' ); ?><?php echo esc_html( $curauth->nickname ); ?></h1>
|
||||
<h1><?php echo esc_html__( 'About:', 'understrap' ) . ' ' . esc_html( $curauth->nickname ); ?></h1>
|
||||
|
||||
<?php if ( ! empty( $curauth->ID ) ) : ?>
|
||||
<?php echo get_avatar( $curauth->ID ); ?>
|
||||
<?php
|
||||
if ( ! empty( $curauth->ID ) ) {
|
||||
echo get_avatar( $curauth->ID );
|
||||
}
|
||||
?>
|
||||
|
||||
<?php if ( ! empty( $curauth->user_url ) || ! empty( $curauth->user_description ) ) : ?>
|
||||
<dl>
|
||||
<?php if ( ! empty( $curauth->user_url ) ) : ?>
|
||||
<dt><?php esc_html_e( 'Website', 'understrap' ); ?></dt>
|
||||
<dd>
|
||||
<a href="<?php echo esc_url( $curauth->user_url ); ?>"><?php echo esc_html( $curauth->user_url ); ?></a>
|
||||
</dd>
|
||||
<?php endif; ?>
|
||||
|
||||
<?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 endif; ?>
|
||||
|
||||
<dl>
|
||||
<?php if ( ! empty( $curauth->user_url ) ) : ?>
|
||||
<dt><?php esc_html_e( 'Website', 'understrap' ); ?></dt>
|
||||
<dd>
|
||||
<a href="<?php echo esc_url( $curauth->user_url ); ?>"><?php echo esc_html( $curauth->user_url ); ?></a>
|
||||
</dd>
|
||||
<?php endif; ?>
|
||||
|
||||
<?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>
|
||||
|
||||
<h2><?php esc_html_e( 'Posts by', 'understrap' ); ?> <?php echo esc_html( $curauth->nickname ); ?>
|
||||
:</h2>
|
||||
<h2><?php echo esc_html__( 'Posts by', 'understrap' ) . ' ' . 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="<?php esc_html_e( 'Permanent Link:', 'understrap' ); ?> <?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; ?>
|
||||
|
||||
<?php
|
||||
if ( have_posts() ) {
|
||||
echo '<ul>';
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
echo '<li>';
|
||||
printf(
|
||||
'<a rel="bookmark" href="%1$s" title="%2$s %3$s">%3$s</a>',
|
||||
esc_url( apply_filters( 'the_permalink', get_permalink( $post ), $post ) ),
|
||||
esc_attr( __( 'Permanent Link:', 'understrap' ) ),
|
||||
get_the_title()
|
||||
);
|
||||
understrap_posted_on();
|
||||
esc_html_e( 'in', 'understrap' );
|
||||
the_category( '&' );
|
||||
echo '</li>';
|
||||
}
|
||||
echo '</ul>';
|
||||
} else {
|
||||
get_template_part( 'loop-templates/content', 'none' );
|
||||
}
|
||||
?>
|
||||
<!-- End Loop -->
|
||||
|
||||
</ul>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
<!-- The pagination component -->
|
||||
<?php understrap_pagination(); ?>
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
|
||||
</div> <!-- .row -->
|
||||
</div> <!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #author-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
31
bower.json
31
bower.json
|
@ -1,31 +0,0 @@
|
|||
{
|
||||
"name": "understrap",
|
||||
"version": "0.8.2",
|
||||
"homepage": "http://understrap.com",
|
||||
"authors": [
|
||||
"Holger Koenemann <office@holgerkoenemann.de>"
|
||||
],
|
||||
"description": "UnderStrap is a Bootstrap and underscores based WordPress theme framework.",
|
||||
"moduleType": "globals",
|
||||
"main": [
|
||||
"sass/theme.scss"
|
||||
],
|
||||
"keywords": [
|
||||
"bootstrap",
|
||||
"underscores",
|
||||
"wordpress",
|
||||
"_s",
|
||||
"sass"
|
||||
],
|
||||
"license": "GPL-2.0",
|
||||
"ignore": [
|
||||
"**/.*",
|
||||
"test",
|
||||
"tests"
|
||||
],
|
||||
"dependencies": {
|
||||
},
|
||||
"_source": "https://github.com/holger1411/understrap.git",
|
||||
"_target": "~0.8.0",
|
||||
"_originalSource": "understrap"
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
<?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 space for exclusions if necessary. -->
|
||||
<rule ref="WordPress-Core">
|
||||
<exclude name="Generic.WhiteSpace.ScopeIndent.Incorrect" />
|
||||
<exclude name="Generic.WhiteSpace.ScopeIndent.IncorrectExact" />
|
||||
|
||||
<exclude name="PEAR.Functions.FunctionCallSignature.Indent" />
|
||||
|
||||
<exclude name="Squiz.Commenting.FileComment.SpacingAfterComment" />
|
||||
<exclude name="Squiz.Commenting.FunctionComment.MissingParamTag" />
|
||||
<exclude name="Squiz.Commenting.InlineComment.InvalidEndChar" />
|
||||
<exclude name="Squiz.Commenting.InlineComment.NotCapital" />
|
||||
</rule>
|
||||
<rule ref="WordPress-Docs">
|
||||
|
||||
</rule>
|
||||
|
||||
<rule ref="Squiz.Commenting.FunctionComment.ScalarTypeHintMissing">
|
||||
<severity>0</severity>
|
||||
</rule>
|
||||
</ruleset>
|
114
comments.php
114
comments.php
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying comments.
|
||||
* The template for displaying comments
|
||||
*
|
||||
* The area of the page that contains both current comments
|
||||
* and the comment form.
|
||||
|
@ -8,6 +8,9 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/*
|
||||
* If the current post is protected by a password and
|
||||
* the visitor has not yet entered the password we will
|
||||
|
@ -25,92 +28,93 @@ if ( post_password_required() ) {
|
|||
<?php if ( have_comments() ) : ?>
|
||||
|
||||
<h2 class="comments-title">
|
||||
|
||||
|
||||
<?php
|
||||
$comments_number = get_comments_number();
|
||||
if ( 1 === (int)$comments_number ) {
|
||||
printf(
|
||||
/* translators: %s: post title */
|
||||
esc_html_x( 'One thought on “%s”', 'comments title', 'understrap' ),
|
||||
'<span>' . get_the_title() . '</span>'
|
||||
);
|
||||
} else {
|
||||
printf( // WPCS: XSS OK.
|
||||
$comments_number = get_comments_number();
|
||||
if ( 1 === (int) $comments_number ) {
|
||||
printf(
|
||||
/* translators: %s: post title */
|
||||
esc_html_x( 'One thought on “%s”', 'comments title', 'understrap' ),
|
||||
'<span>' . get_the_title() . '</span>'
|
||||
);
|
||||
} else {
|
||||
printf(
|
||||
esc_html(
|
||||
/* translators: 1: number of comments, 2: post title */
|
||||
esc_html( _nx(
|
||||
_nx(
|
||||
'%1$s thought on “%2$s”',
|
||||
'%1$s thoughts on “%2$s”',
|
||||
$comments_number,
|
||||
'comments title',
|
||||
'understrap'
|
||||
) ),
|
||||
number_format_i18n( $comments_number ),
|
||||
'<span>' . get_the_title() . '</span>'
|
||||
);
|
||||
}
|
||||
)
|
||||
),
|
||||
number_format_i18n( $comments_number ), // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
'<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. ?>
|
||||
|
||||
<?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>
|
||||
|
||||
|
||||
<h1 class="sr-only"><?php esc_html_e( 'Comment navigation', 'understrap' ); ?></h1>
|
||||
|
||||
<?php if ( get_previous_comments_link() ) { ?>
|
||||
<div class="nav-previous"><?php previous_comments_link( __( '← Older Comments',
|
||||
'understrap' ) ); ?></div>
|
||||
<?php }
|
||||
if ( get_next_comments_link() ) { ?>
|
||||
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments →',
|
||||
'understrap' ) ); ?></div>
|
||||
<div class="nav-previous">
|
||||
<?php previous_comments_link( __( '← Older Comments', 'understrap' ) ); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
<?php if ( get_next_comments_link() ) { ?>
|
||||
<div class="nav-next">
|
||||
<?php next_comments_link( __( 'Newer Comments →', 'understrap' ) ); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
</nav><!-- #comment-nav-above -->
|
||||
|
||||
<?php endif; // check for comment navigation. ?>
|
||||
<?php endif; // Check for comment navigation. ?>
|
||||
|
||||
<ol class="comment-list">
|
||||
|
||||
<?php
|
||||
wp_list_comments( array(
|
||||
'style' => 'ol',
|
||||
'short_ping' => true,
|
||||
) );
|
||||
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. ?>
|
||||
|
||||
<?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>
|
||||
|
||||
|
||||
<h1 class="sr-only"><?php esc_html_e( 'Comment navigation', 'understrap' ); ?></h1>
|
||||
|
||||
<?php if ( get_previous_comments_link() ) { ?>
|
||||
<div class="nav-previous"><?php previous_comments_link( __( '← Older Comments',
|
||||
'understrap' ) ); ?></div>
|
||||
<?php }
|
||||
if ( get_next_comments_link() ) { ?>
|
||||
<div class="nav-next"><?php next_comments_link( __( 'Newer Comments →',
|
||||
'understrap' ) ); ?></div>
|
||||
<div class="nav-previous">
|
||||
<?php previous_comments_link( __( '← Older Comments', 'understrap' ) ); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
<?php if ( get_next_comments_link() ) { ?>
|
||||
<div class="nav-next">
|
||||
<?php next_comments_link( __( 'Newer Comments →', 'understrap' ) ); ?>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
</nav><!-- #comment-nav-below -->
|
||||
|
||||
<?php endif; // check for comment navigation. ?>
|
||||
|
||||
<?php endif; // endif have_comments(). ?>
|
||||
<?php endif; // Check for comment navigation. ?>
|
||||
|
||||
<?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 esc_html_e( 'Comments are closed.', 'understrap' ); ?></p>
|
||||
|
||||
<?php endif; ?>
|
||||
<?php endif; // End of if have_comments(). ?>
|
||||
|
||||
<?php comment_form(); // Render comments form. ?>
|
||||
|
||||
|
|
|
@ -1,10 +1,30 @@
|
|||
{
|
||||
"name": "holger1411/understrap",
|
||||
"description": "Combines Automattic´s Underscores Starter Theme and Bootstrap 4",
|
||||
"type": "wordpress-theme",
|
||||
"license": "GPL-2.0",
|
||||
"minimum-stability": "stable",
|
||||
"require": {"composer/installers": "^1.5"},
|
||||
"keywords": ["wordpress","theme","bootstrap"],
|
||||
"homepage": "https://github.com/holger1411/understrap"
|
||||
}
|
||||
"name": "understrap/understrap",
|
||||
"description": "Combines Automattic´s Underscores Starter Theme and Bootstrap 4",
|
||||
"type": "wordpress-theme",
|
||||
"license": "GPL-2.0",
|
||||
"minimum-stability": "stable",
|
||||
"keywords": [
|
||||
"wordpress",
|
||||
"theme",
|
||||
"bootstrap"
|
||||
],
|
||||
"homepage": "https://github.com/understrap/understrap",
|
||||
"require": {
|
||||
"composer/installers": "^1.9",
|
||||
"php": ">=5.6"
|
||||
},
|
||||
"require-dev": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.6",
|
||||
"roave/security-advisories": "dev-master",
|
||||
"wptrt/wpthemereview": "^0.2"
|
||||
},
|
||||
"scripts": {
|
||||
"check-cs": ["@php ./vendor/squizlabs/php_codesniffer/bin/phpcs -w"],
|
||||
"fix-cs": ["@php ./vendor/squizlabs/php_codesniffer/bin/phpcbf"]
|
||||
},
|
||||
"support": {
|
||||
"issues": "https://github.com/understrap/understrap/issues",
|
||||
"source": "https://github.com/understrap/understrap"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,807 @@
|
|||
{
|
||||
"_readme": [
|
||||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "ad43b10fb1995d73959eae985e5b630c",
|
||||
"packages": [
|
||||
{
|
||||
"name": "composer/installers",
|
||||
"version": "v1.9.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/installers.git",
|
||||
"reference": "b93bcf0fa1fccb0b7d176b0967d969691cd74cca"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/installers/zipball/b93bcf0fa1fccb0b7d176b0967d969691cd74cca",
|
||||
"reference": "b93bcf0fa1fccb0b7d176b0967d969691cd74cca",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^1.0 || ^2.0"
|
||||
},
|
||||
"replace": {
|
||||
"roundcube/plugin-installer": "*",
|
||||
"shama/baton": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "1.6.* || 2.0.*@dev",
|
||||
"composer/semver": "1.0.* || 2.0.*@dev",
|
||||
"phpunit/phpunit": "^4.8.36",
|
||||
"sebastian/comparator": "^1.2.4",
|
||||
"symfony/process": "^2.3"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
"class": "Composer\\Installers\\Plugin",
|
||||
"branch-alias": {
|
||||
"dev-master": "1.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Composer\\Installers\\": "src/Composer/Installers"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Kyle Robinson Young",
|
||||
"email": "kyle@dontkry.com",
|
||||
"homepage": "https://github.com/shama"
|
||||
}
|
||||
],
|
||||
"description": "A multi-framework Composer library installer",
|
||||
"homepage": "https://composer.github.io/installers/",
|
||||
"keywords": [
|
||||
"Craft",
|
||||
"Dolibarr",
|
||||
"Eliasis",
|
||||
"Hurad",
|
||||
"ImageCMS",
|
||||
"Kanboard",
|
||||
"Lan Management System",
|
||||
"MODX Evo",
|
||||
"MantisBT",
|
||||
"Mautic",
|
||||
"Maya",
|
||||
"OXID",
|
||||
"Plentymarkets",
|
||||
"Porto",
|
||||
"RadPHP",
|
||||
"SMF",
|
||||
"Thelia",
|
||||
"Whmcs",
|
||||
"WolfCMS",
|
||||
"agl",
|
||||
"aimeos",
|
||||
"annotatecms",
|
||||
"attogram",
|
||||
"bitrix",
|
||||
"cakephp",
|
||||
"chef",
|
||||
"cockpit",
|
||||
"codeigniter",
|
||||
"concrete5",
|
||||
"croogo",
|
||||
"dokuwiki",
|
||||
"drupal",
|
||||
"eZ Platform",
|
||||
"elgg",
|
||||
"expressionengine",
|
||||
"fuelphp",
|
||||
"grav",
|
||||
"installer",
|
||||
"itop",
|
||||
"joomla",
|
||||
"known",
|
||||
"kohana",
|
||||
"laravel",
|
||||
"lavalite",
|
||||
"lithium",
|
||||
"magento",
|
||||
"majima",
|
||||
"mako",
|
||||
"mediawiki",
|
||||
"modulework",
|
||||
"modx",
|
||||
"moodle",
|
||||
"osclass",
|
||||
"phpbb",
|
||||
"piwik",
|
||||
"ppi",
|
||||
"puppet",
|
||||
"pxcms",
|
||||
"reindex",
|
||||
"roundcube",
|
||||
"shopware",
|
||||
"silverstripe",
|
||||
"sydes",
|
||||
"sylius",
|
||||
"symfony",
|
||||
"typo3",
|
||||
"wordpress",
|
||||
"yawik",
|
||||
"zend",
|
||||
"zikula"
|
||||
],
|
||||
"time": "2020-04-07T06:57:05+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "dealerdirect/phpcodesniffer-composer-installer",
|
||||
"version": "v0.6.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
|
||||
"reference": "8001af8eb107fbfcedc31a8b51e20b07d85b457a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/8001af8eb107fbfcedc31a8b51e20b07d85b457a",
|
||||
"reference": "8001af8eb107fbfcedc31a8b51e20b07d85b457a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^1.0",
|
||||
"php": "^5.3|^7",
|
||||
"squizlabs/php_codesniffer": "^2|^3"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "*",
|
||||
"phpcompatibility/php-compatibility": "^9.0",
|
||||
"sensiolabs/security-checker": "^4.1.0"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
"class": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Franck Nijhof",
|
||||
"email": "franck.nijhof@dealerdirect.com",
|
||||
"homepage": "http://www.frenck.nl",
|
||||
"role": "Developer / IT Manager"
|
||||
}
|
||||
],
|
||||
"description": "PHP_CodeSniffer Standards Composer Installer Plugin",
|
||||
"homepage": "http://www.dealerdirect.com",
|
||||
"keywords": [
|
||||
"PHPCodeSniffer",
|
||||
"PHP_CodeSniffer",
|
||||
"code quality",
|
||||
"codesniffer",
|
||||
"composer",
|
||||
"installer",
|
||||
"phpcs",
|
||||
"plugin",
|
||||
"qa",
|
||||
"quality",
|
||||
"standard",
|
||||
"standards",
|
||||
"style guide",
|
||||
"stylecheck",
|
||||
"tests"
|
||||
],
|
||||
"time": "2020-01-29T20:22:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpcompatibility/php-compatibility",
|
||||
"version": "9.3.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/PHPCompatibility/PHPCompatibility.git",
|
||||
"reference": "9fb324479acf6f39452e0655d2429cc0d3914243"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243",
|
||||
"reference": "9fb324479acf6f39452e0655d2429cc0d3914243",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3",
|
||||
"squizlabs/php_codesniffer": "^2.3 || ^3.0.2"
|
||||
},
|
||||
"conflict": {
|
||||
"squizlabs/php_codesniffer": "2.6.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0"
|
||||
},
|
||||
"suggest": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.",
|
||||
"roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
|
||||
},
|
||||
"type": "phpcodesniffer-standard",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"LGPL-3.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Wim Godden",
|
||||
"homepage": "https://github.com/wimg",
|
||||
"role": "lead"
|
||||
},
|
||||
{
|
||||
"name": "Juliette Reinders Folmer",
|
||||
"homepage": "https://github.com/jrfnl",
|
||||
"role": "lead"
|
||||
},
|
||||
{
|
||||
"name": "Contributors",
|
||||
"homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors"
|
||||
}
|
||||
],
|
||||
"description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.",
|
||||
"homepage": "http://techblog.wimgodden.be/tag/codesniffer/",
|
||||
"keywords": [
|
||||
"compatibility",
|
||||
"phpcs",
|
||||
"standards"
|
||||
],
|
||||
"time": "2019-12-27T09:44:58+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpcompatibility/phpcompatibility-paragonie",
|
||||
"version": "1.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git",
|
||||
"reference": "b862bc32f7e860d0b164b199bd995e690b4b191c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/b862bc32f7e860d0b164b199bd995e690b4b191c",
|
||||
"reference": "b862bc32f7e860d0b164b199bd995e690b4b191c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"phpcompatibility/php-compatibility": "^9.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5",
|
||||
"paragonie/random_compat": "dev-master",
|
||||
"paragonie/sodium_compat": "dev-master"
|
||||
},
|
||||
"suggest": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
|
||||
"roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
|
||||
},
|
||||
"type": "phpcodesniffer-standard",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"LGPL-3.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Wim Godden",
|
||||
"role": "lead"
|
||||
},
|
||||
{
|
||||
"name": "Juliette Reinders Folmer",
|
||||
"role": "lead"
|
||||
}
|
||||
],
|
||||
"description": "A set of rulesets for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.",
|
||||
"homepage": "http://phpcompatibility.com/",
|
||||
"keywords": [
|
||||
"compatibility",
|
||||
"paragonie",
|
||||
"phpcs",
|
||||
"polyfill",
|
||||
"standards"
|
||||
],
|
||||
"time": "2019-11-04T15:17:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpcompatibility/phpcompatibility-wp",
|
||||
"version": "2.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git",
|
||||
"reference": "41bef18ba688af638b7310666db28e1ea9158b2f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/41bef18ba688af638b7310666db28e1ea9158b2f",
|
||||
"reference": "41bef18ba688af638b7310666db28e1ea9158b2f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"phpcompatibility/php-compatibility": "^9.0",
|
||||
"phpcompatibility/phpcompatibility-paragonie": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5"
|
||||
},
|
||||
"suggest": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
|
||||
"roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
|
||||
},
|
||||
"type": "phpcodesniffer-standard",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"LGPL-3.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Wim Godden",
|
||||
"role": "lead"
|
||||
},
|
||||
{
|
||||
"name": "Juliette Reinders Folmer",
|
||||
"role": "lead"
|
||||
}
|
||||
],
|
||||
"description": "A ruleset for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.",
|
||||
"homepage": "http://phpcompatibility.com/",
|
||||
"keywords": [
|
||||
"compatibility",
|
||||
"phpcs",
|
||||
"standards",
|
||||
"wordpress"
|
||||
],
|
||||
"time": "2019-08-28T14:22:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "roave/security-advisories",
|
||||
"version": "dev-master",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Roave/SecurityAdvisories.git",
|
||||
"reference": "09afa996c68c18f49e6487b06adcb2ef27da61fa"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/09afa996c68c18f49e6487b06adcb2ef27da61fa",
|
||||
"reference": "09afa996c68c18f49e6487b06adcb2ef27da61fa",
|
||||
"shasum": ""
|
||||
},
|
||||
"conflict": {
|
||||
"3f/pygmentize": "<1.2",
|
||||
"adodb/adodb-php": "<5.20.12",
|
||||
"alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1",
|
||||
"amphp/artax": "<1.0.6|>=2,<2.0.6",
|
||||
"amphp/http": "<1.0.1",
|
||||
"api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6",
|
||||
"asymmetricrypt/asymmetricrypt": ">=0,<9.9.99",
|
||||
"aws/aws-sdk-php": ">=3,<3.2.1",
|
||||
"bagisto/bagisto": "<0.1.5",
|
||||
"bolt/bolt": "<3.6.10",
|
||||
"brightlocal/phpwhois": "<=4.2.5",
|
||||
"buddypress/buddypress": "<5.1.2",
|
||||
"bugsnag/bugsnag-laravel": ">=2,<2.0.2",
|
||||
"cakephp/cakephp": ">=1.3,<1.3.18|>=2,<2.4.99|>=2.5,<2.5.99|>=2.6,<2.6.12|>=2.7,<2.7.6|>=3,<3.5.18|>=3.6,<3.6.15|>=3.7,<3.7.7",
|
||||
"cart2quote/module-quotation": ">=4.1.6,<=4.4.5|>=5,<5.4.4",
|
||||
"cartalyst/sentry": "<=2.1.6",
|
||||
"centreon/centreon": "<18.10.8|>=19,<19.4.5",
|
||||
"cesnet/simplesamlphp-module-proxystatistics": "<3.1",
|
||||
"codeigniter/framework": "<=3.0.6",
|
||||
"composer/composer": "<=1-alpha.11",
|
||||
"contao-components/mediaelement": ">=2.14.2,<2.21.1",
|
||||
"contao/core": ">=2,<3.5.39",
|
||||
"contao/core-bundle": ">=4,<4.4.46|>=4.5,<4.8.6",
|
||||
"contao/listing-bundle": ">=4,<4.4.8",
|
||||
"datadog/dd-trace": ">=0.30,<0.30.2",
|
||||
"david-garcia/phpwhois": "<=4.3.1",
|
||||
"doctrine/annotations": ">=1,<1.2.7",
|
||||
"doctrine/cache": ">=1,<1.3.2|>=1.4,<1.4.2",
|
||||
"doctrine/common": ">=2,<2.4.3|>=2.5,<2.5.1",
|
||||
"doctrine/dbal": ">=2,<2.0.8|>=2.1,<2.1.2",
|
||||
"doctrine/doctrine-bundle": "<1.5.2",
|
||||
"doctrine/doctrine-module": "<=0.7.1",
|
||||
"doctrine/mongodb-odm": ">=1,<1.0.2",
|
||||
"doctrine/mongodb-odm-bundle": ">=2,<3.0.1",
|
||||
"doctrine/orm": ">=2,<2.4.8|>=2.5,<2.5.1",
|
||||
"dolibarr/dolibarr": "<=10.0.6",
|
||||
"dompdf/dompdf": ">=0.6,<0.6.2",
|
||||
"drupal/core": ">=7,<7.69|>=8,<8.7.12|>=8.8,<8.8.4",
|
||||
"drupal/drupal": ">=7,<7.69|>=8,<8.7.12|>=8.8,<8.8.4",
|
||||
"endroid/qr-code-bundle": "<3.4.2",
|
||||
"enshrined/svg-sanitize": "<0.13.1",
|
||||
"erusev/parsedown": "<1.7.2",
|
||||
"ezsystems/ezfind-ls": ">=5.3,<5.3.6.1|>=5.4,<5.4.11.1|>=2017.12,<2017.12.0.1",
|
||||
"ezsystems/ezplatform": ">=1.7,<1.7.9.1|>=1.13,<1.13.5.1|>=2.5,<2.5.4",
|
||||
"ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6",
|
||||
"ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2",
|
||||
"ezsystems/ezplatform-user": ">=1,<1.0.1",
|
||||
"ezsystems/ezpublish-kernel": ">=5.3,<5.3.12.1|>=5.4,<5.4.14.1|>=6,<6.7.9.1|>=6.8,<6.13.6.2|>=7,<7.2.4.1|>=7.3,<7.3.2.1|>=7.5,<7.5.6.2",
|
||||
"ezsystems/ezpublish-legacy": ">=5.3,<5.3.12.6|>=5.4,<5.4.14.1|>=2011,<2017.12.7.2|>=2018.6,<2018.6.1.4|>=2018.9,<2018.9.1.3|>=2019.3,<2019.3.4.2",
|
||||
"ezsystems/repository-forms": ">=2.3,<2.3.2.1",
|
||||
"ezyang/htmlpurifier": "<4.1.1",
|
||||
"firebase/php-jwt": "<2",
|
||||
"fooman/tcpdf": "<6.2.22",
|
||||
"fossar/tcpdf-parser": "<6.2.22",
|
||||
"friendsofsymfony/oauth2-php": "<1.3",
|
||||
"friendsofsymfony/rest-bundle": ">=1.2,<1.2.2",
|
||||
"friendsofsymfony/user-bundle": ">=1.2,<1.3.5",
|
||||
"fuel/core": "<1.8.1",
|
||||
"getgrav/grav": "<1.7-beta.8",
|
||||
"gree/jose": "<=2.2",
|
||||
"gregwar/rst": "<1.0.3",
|
||||
"guzzlehttp/guzzle": ">=4-rc.2,<4.2.4|>=5,<5.3.1|>=6,<6.2.1",
|
||||
"illuminate/auth": ">=4,<4.0.99|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.10",
|
||||
"illuminate/cookie": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.42|>=5.6,<5.6.30",
|
||||
"illuminate/database": ">=4,<4.0.99|>=4.1,<4.1.29",
|
||||
"illuminate/encryption": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.40|>=5.6,<5.6.15",
|
||||
"illuminate/view": ">=7,<7.1.2",
|
||||
"ivankristianto/phpwhois": "<=4.3",
|
||||
"james-heinrich/getid3": "<1.9.9",
|
||||
"joomla/session": "<1.3.1",
|
||||
"jsmitty12/phpwhois": "<5.1",
|
||||
"kazist/phpwhois": "<=4.2.6",
|
||||
"kreait/firebase-php": ">=3.2,<3.8.1",
|
||||
"la-haute-societe/tcpdf": "<6.2.22",
|
||||
"laravel/framework": ">=4,<4.0.99|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.42|>=5.6,<5.6.30|>=7,<7.1.2",
|
||||
"laravel/socialite": ">=1,<1.0.99|>=2,<2.0.10",
|
||||
"league/commonmark": "<0.18.3",
|
||||
"librenms/librenms": "<1.53",
|
||||
"magento/community-edition": ">=2,<2.2.10|>=2.3,<2.3.3",
|
||||
"magento/magento1ce": "<1.9.4.3",
|
||||
"magento/magento1ee": ">=1,<1.14.4.3",
|
||||
"magento/product-community-edition": ">=2,<2.2.10|>=2.3,<2.3.2-p.2",
|
||||
"monolog/monolog": ">=1.8,<1.12",
|
||||
"namshi/jose": "<2.2",
|
||||
"onelogin/php-saml": "<2.10.4",
|
||||
"oneup/uploader-bundle": "<1.9.3|>=2,<2.1.5",
|
||||
"openid/php-openid": "<2.3",
|
||||
"oro/crm": ">=1.7,<1.7.4",
|
||||
"oro/platform": ">=1.7,<1.7.4",
|
||||
"padraic/humbug_get_contents": "<1.1.2",
|
||||
"pagarme/pagarme-php": ">=0,<3",
|
||||
"paragonie/random_compat": "<2",
|
||||
"paypal/merchant-sdk-php": "<3.12",
|
||||
"pear/archive_tar": "<1.4.4",
|
||||
"phpfastcache/phpfastcache": ">=5,<5.0.13",
|
||||
"phpmailer/phpmailer": ">=5,<5.2.27|>=6,<6.0.6",
|
||||
"phpmyadmin/phpmyadmin": "<4.9.2",
|
||||
"phpoffice/phpexcel": "<1.8.2",
|
||||
"phpoffice/phpspreadsheet": "<1.8",
|
||||
"phpunit/phpunit": ">=4.8.19,<4.8.28|>=5.0.10,<5.6.3",
|
||||
"phpwhois/phpwhois": "<=4.2.5",
|
||||
"phpxmlrpc/extras": "<0.6.1",
|
||||
"pimcore/pimcore": "<6.3",
|
||||
"prestashop/autoupgrade": ">=4,<4.10.1",
|
||||
"prestashop/gamification": "<2.3.2",
|
||||
"prestashop/ps_facetedsearch": "<3.4.1",
|
||||
"privatebin/privatebin": "<1.2.2|>=1.3,<1.3.2",
|
||||
"propel/propel": ">=2-alpha.1,<=2-alpha.7",
|
||||
"propel/propel1": ">=1,<=1.7.1",
|
||||
"pusher/pusher-php-server": "<2.2.1",
|
||||
"robrichards/xmlseclibs": "<3.0.4",
|
||||
"sabre/dav": ">=1.6,<1.6.99|>=1.7,<1.7.11|>=1.8,<1.8.9",
|
||||
"scheb/two-factor-bundle": ">=0,<3.26|>=4,<4.11",
|
||||
"sensiolabs/connect": "<4.2.3",
|
||||
"serluck/phpwhois": "<=4.2.6",
|
||||
"shopware/shopware": "<5.3.7",
|
||||
"silverstripe/admin": ">=1.0.3,<1.0.4|>=1.1,<1.1.1",
|
||||
"silverstripe/assets": ">=1,<1.4.7|>=1.5,<1.5.2",
|
||||
"silverstripe/cms": "<4.3.6|>=4.4,<4.4.4",
|
||||
"silverstripe/comments": ">=1.3,<1.9.99|>=2,<2.9.99|>=3,<3.1.1",
|
||||
"silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3",
|
||||
"silverstripe/framework": "<4.4.5|>=4.5,<4.5.2",
|
||||
"silverstripe/graphql": ">=2,<2.0.5|>=3,<3.1.2",
|
||||
"silverstripe/registry": ">=2.1,<2.1.2|>=2.2,<2.2.1",
|
||||
"silverstripe/restfulserver": ">=1,<1.0.9|>=2,<2.0.4",
|
||||
"silverstripe/subsites": ">=2,<2.1.1",
|
||||
"silverstripe/taxonomy": ">=1.3,<1.3.1|>=2,<2.0.1",
|
||||
"silverstripe/userforms": "<3",
|
||||
"simple-updates/phpwhois": "<=1",
|
||||
"simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4",
|
||||
"simplesamlphp/simplesamlphp": "<1.18.4",
|
||||
"simplesamlphp/simplesamlphp-module-infocard": "<1.0.1",
|
||||
"simplito/elliptic-php": "<1.0.6",
|
||||
"slim/slim": "<2.6",
|
||||
"smarty/smarty": "<3.1.33",
|
||||
"socalnick/scn-social-auth": "<1.15.2",
|
||||
"spoonity/tcpdf": "<6.2.22",
|
||||
"squizlabs/php_codesniffer": ">=1,<2.8.1|>=3,<3.0.1",
|
||||
"ssddanbrown/bookstack": "<0.25.3",
|
||||
"stormpath/sdk": ">=0,<9.9.99",
|
||||
"studio-42/elfinder": "<2.1.49",
|
||||
"swiftmailer/swiftmailer": ">=4,<5.4.5",
|
||||
"sylius/admin-bundle": ">=1,<1.0.17|>=1.1,<1.1.9|>=1.2,<1.2.2",
|
||||
"sylius/grid": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1",
|
||||
"sylius/grid-bundle": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1",
|
||||
"sylius/resource-bundle": "<1.3.13|>=1.4,<1.4.6|>=1.5,<1.5.1|>=1.6,<1.6.3",
|
||||
"sylius/sylius": "<1.3.16|>=1.4,<1.4.12|>=1.5,<1.5.9|>=1.6,<1.6.5",
|
||||
"symbiote/silverstripe-multivaluefield": ">=3,<3.0.99",
|
||||
"symbiote/silverstripe-versionedfiles": "<=2.0.3",
|
||||
"symfony/cache": ">=3.1,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8",
|
||||
"symfony/dependency-injection": ">=2,<2.0.17|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7",
|
||||
"symfony/error-handler": ">=4.4,<4.4.4|>=5,<5.0.4",
|
||||
"symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1",
|
||||
"symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7",
|
||||
"symfony/http-foundation": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7",
|
||||
"symfony/http-kernel": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8",
|
||||
"symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13",
|
||||
"symfony/mime": ">=4.3,<4.3.8",
|
||||
"symfony/phpunit-bridge": ">=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7",
|
||||
"symfony/polyfill": ">=1,<1.10",
|
||||
"symfony/polyfill-php55": ">=1,<1.10",
|
||||
"symfony/proxy-manager-bridge": ">=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7",
|
||||
"symfony/routing": ">=2,<2.0.19",
|
||||
"symfony/security": ">=2,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=4.4,<4.4.7|>=5,<5.0.7",
|
||||
"symfony/security-bundle": ">=2,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11",
|
||||
"symfony/security-core": ">=2.4,<2.6.13|>=2.7,<2.7.9|>=2.7.30,<2.7.32|>=2.8,<2.8.37|>=3,<3.3.17|>=3.4,<3.4.7|>=4,<4.0.7",
|
||||
"symfony/security-csrf": ">=2.4,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11",
|
||||
"symfony/security-guard": ">=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11",
|
||||
"symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7",
|
||||
"symfony/serializer": ">=2,<2.0.11",
|
||||
"symfony/symfony": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7",
|
||||
"symfony/translation": ">=2,<2.0.17",
|
||||
"symfony/validator": ">=2,<2.0.24|>=2.1,<2.1.12|>=2.2,<2.2.5|>=2.3,<2.3.3",
|
||||
"symfony/var-exporter": ">=4.2,<4.2.12|>=4.3,<4.3.8",
|
||||
"symfony/web-profiler-bundle": ">=2,<2.3.19|>=2.4,<2.4.9|>=2.5,<2.5.4",
|
||||
"symfony/yaml": ">=2,<2.0.22|>=2.1,<2.1.7",
|
||||
"tecnickcom/tcpdf": "<6.2.22",
|
||||
"thelia/backoffice-default-template": ">=2.1,<2.1.2",
|
||||
"thelia/thelia": ">=2.1-beta.1,<2.1.3",
|
||||
"theonedemon/phpwhois": "<=4.2.5",
|
||||
"titon/framework": ">=0,<9.9.99",
|
||||
"truckersmp/phpwhois": "<=4.3.1",
|
||||
"twig/twig": "<1.38|>=2,<2.7",
|
||||
"typo3/cms": ">=6.2,<6.2.30|>=7,<7.6.32|>=8,<8.7.30|>=9,<9.5.12|>=10,<10.2.1",
|
||||
"typo3/cms-core": ">=8,<8.7.30|>=9,<9.5.12|>=10,<10.2.1",
|
||||
"typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.10|>=3.1,<3.1.7|>=3.2,<3.2.7|>=3.3,<3.3.5",
|
||||
"typo3/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4",
|
||||
"typo3/phar-stream-wrapper": ">=1,<2.1.1|>=3,<3.1.1",
|
||||
"ua-parser/uap-php": "<3.8",
|
||||
"usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2",
|
||||
"verot/class.upload.php": "<=1.0.3|>=2,<=2.0.4",
|
||||
"wallabag/tcpdf": "<6.2.22",
|
||||
"willdurand/js-translation-bundle": "<2.1.1",
|
||||
"yii2mod/yii2-cms": "<1.9.2",
|
||||
"yiisoft/yii": ">=1.1.14,<1.1.15",
|
||||
"yiisoft/yii2": "<2.0.15",
|
||||
"yiisoft/yii2-bootstrap": "<2.0.4",
|
||||
"yiisoft/yii2-dev": "<2.0.15",
|
||||
"yiisoft/yii2-elasticsearch": "<2.0.5",
|
||||
"yiisoft/yii2-gii": "<2.0.4",
|
||||
"yiisoft/yii2-jui": "<2.0.4",
|
||||
"yiisoft/yii2-redis": "<2.0.8",
|
||||
"yourls/yourls": "<1.7.4",
|
||||
"zendframework/zend-cache": ">=2.4,<2.4.8|>=2.5,<2.5.3",
|
||||
"zendframework/zend-captcha": ">=2,<2.4.9|>=2.5,<2.5.2",
|
||||
"zendframework/zend-crypt": ">=2,<2.4.9|>=2.5,<2.5.2",
|
||||
"zendframework/zend-db": ">=2,<2.0.99|>=2.1,<2.1.99|>=2.2,<2.2.10|>=2.3,<2.3.5",
|
||||
"zendframework/zend-developer-tools": ">=1.2.2,<1.2.3",
|
||||
"zendframework/zend-diactoros": ">=1,<1.8.4",
|
||||
"zendframework/zend-feed": ">=1,<2.10.3",
|
||||
"zendframework/zend-form": ">=2,<2.2.7|>=2.3,<2.3.1",
|
||||
"zendframework/zend-http": ">=1,<2.8.1",
|
||||
"zendframework/zend-json": ">=2.1,<2.1.6|>=2.2,<2.2.6",
|
||||
"zendframework/zend-ldap": ">=2,<2.0.99|>=2.1,<2.1.99|>=2.2,<2.2.8|>=2.3,<2.3.3",
|
||||
"zendframework/zend-mail": ">=2,<2.4.11|>=2.5,<2.7.2",
|
||||
"zendframework/zend-navigation": ">=2,<2.2.7|>=2.3,<2.3.1",
|
||||
"zendframework/zend-session": ">=2,<2.0.99|>=2.1,<2.1.99|>=2.2,<2.2.9|>=2.3,<2.3.4",
|
||||
"zendframework/zend-validator": ">=2.3,<2.3.6",
|
||||
"zendframework/zend-view": ">=2,<2.2.7|>=2.3,<2.3.1",
|
||||
"zendframework/zend-xmlrpc": ">=2.1,<2.1.6|>=2.2,<2.2.6",
|
||||
"zendframework/zendframework": "<2.5.1",
|
||||
"zendframework/zendframework1": "<1.12.20",
|
||||
"zendframework/zendopenid": ">=2,<2.0.2",
|
||||
"zendframework/zendxml": ">=1,<1.0.1",
|
||||
"zetacomponents/mail": "<1.8.2",
|
||||
"zf-commons/zfc-user": "<1.2.2",
|
||||
"zfcampus/zf-apigility-doctrine": ">=1,<1.0.3",
|
||||
"zfr/zfr-oauth2-server-module": "<0.1.2"
|
||||
},
|
||||
"type": "metapackage",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Marco Pivetta",
|
||||
"email": "ocramius@gmail.com",
|
||||
"role": "maintainer"
|
||||
},
|
||||
{
|
||||
"name": "Ilya Tribusean",
|
||||
"email": "slash3b@gmail.com",
|
||||
"role": "maintainer"
|
||||
}
|
||||
],
|
||||
"description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it",
|
||||
"time": "2020-04-15T04:56:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "squizlabs/php_codesniffer",
|
||||
"version": "3.5.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
|
||||
"reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
|
||||
"reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-simplexml": "*",
|
||||
"ext-tokenizer": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"php": ">=5.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
|
||||
},
|
||||
"bin": [
|
||||
"bin/phpcs",
|
||||
"bin/phpcbf"
|
||||
],
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "3.x-dev"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Greg Sherwood",
|
||||
"role": "lead"
|
||||
}
|
||||
],
|
||||
"description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
|
||||
"homepage": "https://github.com/squizlabs/PHP_CodeSniffer",
|
||||
"keywords": [
|
||||
"phpcs",
|
||||
"standards"
|
||||
],
|
||||
"time": "2020-04-17T01:09:41+00:00"
|
||||
},
|
||||
{
|
||||
"name": "wp-coding-standards/wpcs",
|
||||
"version": "2.2.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/WordPress/WordPress-Coding-Standards.git",
|
||||
"reference": "b5a453203114cc2284b1a614c4953456fbe4f546"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b5a453203114cc2284b1a614c4953456fbe4f546",
|
||||
"reference": "b5a453203114cc2284b1a614c4953456fbe4f546",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.4",
|
||||
"squizlabs/php_codesniffer": "^3.3.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5 || ^0.6",
|
||||
"phpcompatibility/php-compatibility": "^9.0",
|
||||
"phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
|
||||
},
|
||||
"suggest": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.6 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically."
|
||||
},
|
||||
"type": "phpcodesniffer-standard",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Contributors",
|
||||
"homepage": "https://github.com/WordPress/WordPress-Coding-Standards/graphs/contributors"
|
||||
}
|
||||
],
|
||||
"description": "PHP_CodeSniffer rules (sniffs) to enforce WordPress coding conventions",
|
||||
"keywords": [
|
||||
"phpcs",
|
||||
"standards",
|
||||
"wordpress"
|
||||
],
|
||||
"time": "2020-02-04T02:52:06+00:00"
|
||||
},
|
||||
{
|
||||
"name": "wptrt/wpthemereview",
|
||||
"version": "0.2.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/WPTRT/WPThemeReview.git",
|
||||
"reference": "462e59020dad9399ed2fe8e61f2a21b5e206e420"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/WPTRT/WPThemeReview/zipball/462e59020dad9399ed2fe8e61f2a21b5e206e420",
|
||||
"reference": "462e59020dad9399ed2fe8e61f2a21b5e206e420",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.4",
|
||||
"phpcompatibility/phpcompatibility-wp": "^2.0",
|
||||
"squizlabs/php_codesniffer": "^3.3.1",
|
||||
"wp-coding-standards/wpcs": "^2.2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5.0",
|
||||
"phpcompatibility/php-compatibility": "^9.0",
|
||||
"phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0",
|
||||
"roave/security-advisories": "dev-master"
|
||||
},
|
||||
"suggest": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": "^0.5.0 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically."
|
||||
},
|
||||
"type": "phpcodesniffer-standard",
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Theme Review Team",
|
||||
"homepage": "https://make.wordpress.org/themes/handbook/",
|
||||
"role": "Strategy and rule setting"
|
||||
},
|
||||
{
|
||||
"name": "Ulrich Pogson",
|
||||
"homepage": "https://github.com/grappler",
|
||||
"role": "Lead developer"
|
||||
},
|
||||
{
|
||||
"name": "Juliette Reinders Folmer",
|
||||
"homepage": "https://github.com/jrfnl",
|
||||
"role": "Lead developer"
|
||||
},
|
||||
{
|
||||
"name": "Denis Žoljom",
|
||||
"homepage": "https://github.com/dingo-d",
|
||||
"role": "Plugin integration lead"
|
||||
},
|
||||
{
|
||||
"name": "Contributors",
|
||||
"homepage": "https://github.com/WPTRT/WPThemeReview/graphs/contributors"
|
||||
}
|
||||
],
|
||||
"description": "PHP_CodeSniffer rules (sniffs) to verify theme compliance with the rules for theme hosting on wordpress.org",
|
||||
"homepage": "https://make.wordpress.org/themes/handbook/review/",
|
||||
"keywords": [
|
||||
"phpcs",
|
||||
"standards",
|
||||
"themes",
|
||||
"wordpress"
|
||||
],
|
||||
"time": "2019-11-17T20:05:55+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": {
|
||||
"roave/security-advisories": 20
|
||||
},
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
"php": ">=5.6"
|
||||
},
|
||||
"platform-dev": [],
|
||||
"plugin-api-version": "1.1.0"
|
||||
}
|
Binary file not shown.
4744
css/theme.css
4744
css/theme.css
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 one or more lines are too long
20
footer.php
20
footer.php
|
@ -1,13 +1,15 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying the footer.
|
||||
* The template for displaying the footer
|
||||
*
|
||||
* Contains the closing of the #content div and all content after
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
$the_theme = wp_get_theme();
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
|
@ -25,18 +27,8 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<div class="site-info">
|
||||
|
||||
<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="'.esc_url( __('http://understrap.com', 'understrap')).'">understrap.com</a>' ); ?>
|
||||
|
||||
(<?php printf( // WPCS: XSS ok.
|
||||
/* translators:*/
|
||||
esc_html__( 'Version: %1$s', 'understrap' ), $the_theme->get( 'Version' ) ); ?>)
|
||||
<?php understrap_site_info(); ?>
|
||||
|
||||
</div><!-- .site-info -->
|
||||
|
||||
</footer><!-- #colophon -->
|
||||
|
|
|
@ -1,71 +1,31 @@
|
|||
<?php
|
||||
/**
|
||||
* Understrap functions and definitions
|
||||
* UnderStrap functions and definitions
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
/**
|
||||
* Initialize theme default settings
|
||||
*/
|
||||
require get_template_directory() . '/inc/theme-settings.php';
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Theme setup and custom theme supports.
|
||||
*/
|
||||
require get_template_directory() . '/inc/setup.php';
|
||||
$understrap_includes = array(
|
||||
'/theme-settings.php', // Initialize theme default settings.
|
||||
'/setup.php', // Theme setup and custom theme supports.
|
||||
'/widgets.php', // Register widget area.
|
||||
'/enqueue.php', // Enqueue scripts and styles.
|
||||
'/template-tags.php', // Custom template tags for this theme.
|
||||
'/pagination.php', // Custom pagination for this theme.
|
||||
'/hooks.php', // Custom hooks.
|
||||
'/extras.php', // Custom functions that act independently of the theme templates.
|
||||
'/customizer.php', // Customizer additions.
|
||||
'/custom-comments.php', // Custom Comments file.
|
||||
'/jetpack.php', // Load Jetpack compatibility file.
|
||||
'/class-wp-bootstrap-navwalker.php', // Load custom WordPress nav walker. Trying to get deeper navigation? Check out: https://github.com/understrap/understrap/issues/567.
|
||||
'/woocommerce.php', // Load WooCommerce functions.
|
||||
'/editor.php', // Load Editor functions.
|
||||
'/deprecated.php', // Load deprecated functions.
|
||||
);
|
||||
|
||||
/**
|
||||
* Register widget area.
|
||||
*/
|
||||
require get_template_directory() . '/inc/widgets.php';
|
||||
|
||||
/**
|
||||
* Enqueue scripts and styles.
|
||||
*/
|
||||
require get_template_directory() . '/inc/enqueue.php';
|
||||
|
||||
/**
|
||||
* Custom template tags for this theme.
|
||||
*/
|
||||
require get_template_directory() . '/inc/template-tags.php';
|
||||
|
||||
/**
|
||||
* Custom pagination for this theme.
|
||||
*/
|
||||
require get_template_directory() . '/inc/pagination.php';
|
||||
|
||||
/**
|
||||
* Custom functions that act independently of the theme templates.
|
||||
*/
|
||||
require get_template_directory() . '/inc/extras.php';
|
||||
|
||||
/**
|
||||
* Customizer additions.
|
||||
*/
|
||||
require get_template_directory() . '/inc/customizer.php';
|
||||
|
||||
/**
|
||||
* Custom Comments file.
|
||||
*/
|
||||
require get_template_directory() . '/inc/custom-comments.php';
|
||||
|
||||
/**
|
||||
* Load Jetpack compatibility file.
|
||||
*/
|
||||
require get_template_directory() . '/inc/jetpack.php';
|
||||
|
||||
/**
|
||||
* Load custom WordPress nav walker.
|
||||
*/
|
||||
require get_template_directory() . '/inc/class-wp-bootstrap-navwalker.php';
|
||||
|
||||
/**
|
||||
* Load WooCommerce functions.
|
||||
*/
|
||||
require get_template_directory() . '/inc/woocommerce.php';
|
||||
|
||||
/**
|
||||
* Load Editor functions.
|
||||
*/
|
||||
require get_template_directory() . '/inc/editor.php';
|
||||
foreach ( $understrap_includes as $file ) {
|
||||
require_once get_template_directory() . '/inc' . $file;
|
||||
}
|
||||
|
|
Binary file not shown.
|
@ -1,22 +1,25 @@
|
|||
<?php
|
||||
/**
|
||||
* Hero setup.
|
||||
* Hero setup
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
?>
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
<?php if ( is_active_sidebar( 'hero' ) || is_active_sidebar( 'statichero' ) || is_active_sidebar( 'herocanvas' ) ) : ?>
|
||||
if ( is_active_sidebar( 'hero' ) || is_active_sidebar( 'statichero' ) || is_active_sidebar( 'herocanvas' ) ) :
|
||||
?>
|
||||
|
||||
<div class="wrapper" id="wrapper-hero">
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'hero' ); ?>
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'herocanvas' ); ?>
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'statichero' ); ?>
|
||||
<?php
|
||||
get_template_part( 'sidebar-templates/sidebar', 'hero' );
|
||||
get_template_part( 'sidebar-templates/sidebar', 'herocanvas' );
|
||||
get_template_part( 'sidebar-templates/sidebar', 'statichero' );
|
||||
?>
|
||||
|
||||
</div>
|
||||
|
||||
<?php endif; ?>
|
||||
<?php
|
||||
endif;
|
||||
|
|
|
@ -1,40 +1,18 @@
|
|||
<?php
|
||||
/**
|
||||
* Left sidebar check.
|
||||
* Left sidebar check
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
?>
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
<?php
|
||||
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
||||
|
||||
if ( 'left' === $sidebar_pos || 'both' === $sidebar_pos ) {
|
||||
get_template_part( 'sidebar-templates/sidebar', 'left' );
|
||||
}
|
||||
?>
|
||||
|
||||
<?php if ( 'left' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'left' ); ?>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php
|
||||
$html = '';
|
||||
if ( 'right' === $sidebar_pos || 'left' === $sidebar_pos ) {
|
||||
$html = '<div class="';
|
||||
if ( ( is_active_sidebar( 'right-sidebar' ) && 'right' === $sidebar_pos ) || ( is_active_sidebar( 'left-sidebar' ) && 'left' === $sidebar_pos ) ) {
|
||||
$html .= 'col-md-8 content-area" id="primary">';
|
||||
} else {
|
||||
$html .= 'col-md-12 content-area" id="primary">';
|
||||
}
|
||||
echo $html; // WPCS: XSS OK.
|
||||
} elseif ( 'both' === $sidebar_pos ) {
|
||||
$html = '<div class="';
|
||||
if ( is_active_sidebar( 'right-sidebar' ) && is_active_sidebar( 'left-sidebar' ) ) {
|
||||
$html .= 'col-md-6 content-area" id="primary">';
|
||||
} elseif ( 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.
|
||||
} else {
|
||||
echo '<div class="col-md-12 content-area" id="primary">';
|
||||
}
|
||||
<div class="col-md content-area" id="primary">
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
<?php
|
||||
/**
|
||||
* Right sidebar check.
|
||||
* Right sidebar check
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
</div><!-- #closing the primary container from /global-templates/left-sidebar-check.php -->
|
||||
|
||||
<?php $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' ); ?>
|
||||
<?php
|
||||
$sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
||||
|
||||
<?php if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) : ?>
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'right' ); ?>
|
||||
|
||||
<?php endif; ?>
|
||||
if ( 'right' === $sidebar_pos || 'both' === $sidebar_pos ) {
|
||||
get_template_part( 'sidebar-templates/sidebar', 'right' );
|
||||
}
|
||||
|
|
|
@ -1,24 +1,20 @@
|
|||
{
|
||||
"browserSyncOptions" : {
|
||||
"proxy": "localhost/",
|
||||
"notify": false
|
||||
},
|
||||
"browserSyncWatchFiles" : [
|
||||
"./css/*.min.css",
|
||||
"./js/*.min.js",
|
||||
"./**/*.php"
|
||||
],
|
||||
"paths" : {
|
||||
"js": "./js",
|
||||
"css": "./css",
|
||||
"img": "./img",
|
||||
"browserSyncOptions": {
|
||||
"proxy": "localhost:8080/",
|
||||
"notify": false
|
||||
},
|
||||
"browserSyncWatchFiles": ["./css/*.min.css", "./js/*.min.js", "./**/*.php"],
|
||||
"paths": {
|
||||
"js": "./js",
|
||||
"css": "./css",
|
||||
"img": "./img",
|
||||
"imgsrc": "./src/img",
|
||||
"sass": "./sass",
|
||||
"node": "./node_modules/",
|
||||
"bower": "./bower_components/",
|
||||
"dev": "./src",
|
||||
"dist": "./dist",
|
||||
"distprod": "./dist-product",
|
||||
"vendor": ""
|
||||
}
|
||||
"sass": "./sass",
|
||||
"node": "./node_modules",
|
||||
"composer": "./vendor",
|
||||
"dev": "./src",
|
||||
"dist": "./dist",
|
||||
"distprod": "./dist-product",
|
||||
"vendor": ""
|
||||
}
|
||||
}
|
||||
|
|
457
gulpfile.js
457
gulpfile.js
|
@ -1,191 +1,324 @@
|
|||
// Defining requirements
|
||||
var autoprefixer = require( 'autoprefixer' ),
|
||||
browserSync = require('browser-sync').create(),
|
||||
cleanCSS = require( 'gulp-clean-css' ),
|
||||
concat = require( 'gulp-concat' ),
|
||||
del = require( 'del' ),
|
||||
gulp = require( 'gulp' ),
|
||||
imagemin = require( 'gulp-imagemin' ),
|
||||
postcss = require( 'gulp-postcss' ),
|
||||
rename = require( 'gulp-rename' ),
|
||||
replace = require( 'gulp-replace' ),
|
||||
sass = require( 'gulp-sass' ),
|
||||
sourcemaps = require( 'gulp-sourcemaps' ),
|
||||
uglify = require( 'gulp-uglify' ),
|
||||
rev = require('gulp-rev'),
|
||||
revDel = require('rev-del');
|
||||
|
||||
var gulp = require('gulp');
|
||||
var plumber = require('gulp-plumber');
|
||||
var sass = require('gulp-sass');
|
||||
var babel = require('gulp-babel');
|
||||
var postcss = require('gulp-postcss');
|
||||
var touch = require('gulp-touch-fd');
|
||||
var rename = require('gulp-rename');
|
||||
var concat = require('gulp-concat');
|
||||
var uglify = require('gulp-uglify');
|
||||
var imagemin = require('gulp-imagemin');
|
||||
var sourcemaps = require('gulp-sourcemaps');
|
||||
var browserSync = require('browser-sync').create();
|
||||
var del = require('del');
|
||||
var cleanCSS = require('gulp-clean-css');
|
||||
var replace = require('gulp-replace');
|
||||
var autoprefixer = require('autoprefixer');
|
||||
|
||||
// Configuration file to keep your code DRY
|
||||
const cfg = require( './gulpconfig.json' );
|
||||
const paths = cfg.paths;
|
||||
|
||||
// Compile SCSS to CSS
|
||||
function scss( ) {
|
||||
return gulp.src( paths.sass + '/*.scss' )
|
||||
.pipe(sourcemaps.init({loadMaps: true}))
|
||||
.pipe(sass()).on('error', sass.logError)
|
||||
.pipe(postcss([
|
||||
autoprefixer()
|
||||
]))
|
||||
.pipe(sourcemaps.write(undefined, { sourceRoot: null }))
|
||||
.pipe( gulp.dest( paths.css ) );
|
||||
|
||||
}
|
||||
|
||||
exports.scss = scss;
|
||||
|
||||
// Minify CSS
|
||||
function minifycss( done ) {
|
||||
gulp.src( paths.css + '/theme.css' )
|
||||
.pipe( sourcemaps.init( { loadMaps: true } ) )
|
||||
.pipe( cleanCSS( { compatibility: '*' } ) )
|
||||
.pipe( rename( { suffix: '.min' } ) )
|
||||
.pipe( sourcemaps.write( './' ) )
|
||||
.pipe( gulp.dest( paths.css ) )
|
||||
|
||||
gulp.src( paths.css + '/custom-editor-style.css' )
|
||||
.pipe( sourcemaps.init( { loadMaps: true } ) )
|
||||
.pipe( cleanCSS( { compatibility: '*' } ) )
|
||||
.pipe( rename( { suffix: '.min' } ) )
|
||||
.pipe( sourcemaps.write( './' ) )
|
||||
.pipe( gulp.dest( paths.css ) );
|
||||
|
||||
done();
|
||||
};
|
||||
|
||||
exports.minifycss = minifycss;
|
||||
|
||||
// Concatinate scripts and minify them
|
||||
function scripts( done ) {
|
||||
var scripts = [
|
||||
|
||||
paths.dev + '/js/bootstrap4/bootstrap.js',
|
||||
|
||||
paths.dev + '/js/skip-link-focus-fix.js',
|
||||
// Adding currently empty javascript file to add on for your own themes´ customizations
|
||||
// Please add any customizations to this .js file only!
|
||||
paths.dev + '/js/custom-javascript.js'
|
||||
];
|
||||
|
||||
gulp.src( scripts )
|
||||
.pipe( concat( 'theme.js' ) )
|
||||
.pipe( gulp.dest( paths.js ) )
|
||||
|
||||
gulp.src( scripts )
|
||||
.pipe( concat( 'theme.min.js' ) )
|
||||
.pipe( uglify() )
|
||||
.pipe( gulp.dest( paths.js ) );
|
||||
|
||||
done();
|
||||
}
|
||||
|
||||
exports.scripts = scripts;
|
||||
|
||||
// Compress image assets
|
||||
function imagemin() {
|
||||
return gulp.src( paths.imgsrc + '/**' )
|
||||
.pipe( imagemin() )
|
||||
.pipe( gulp.dest( paths.img ) );
|
||||
}
|
||||
|
||||
exports.imagemin = imagemin;
|
||||
var cfg = require('./gulpconfig.json');
|
||||
var paths = cfg.paths;
|
||||
|
||||
// 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
|
||||
// gulp sass
|
||||
// Compiles SCSS files in CSS
|
||||
gulp.task('sass', function () {
|
||||
var stream = gulp
|
||||
.src(paths.sass + '/*.scss')
|
||||
.pipe(
|
||||
plumber({
|
||||
errorHandler: function (err) {
|
||||
console.log(err);
|
||||
this.emit('end');
|
||||
}
|
||||
})
|
||||
)
|
||||
.pipe(sourcemaps.init({ loadMaps: true }))
|
||||
.pipe(sass({ errLogToConsole: true }))
|
||||
.pipe(postcss([autoprefixer()]))
|
||||
.pipe(sourcemaps.write(undefined, { sourceRoot: null }))
|
||||
.pipe(gulp.dest(paths.css))
|
||||
.pipe(touch());
|
||||
return stream;
|
||||
});
|
||||
|
||||
////////////////// All Bootstrap SASS Assets /////////////////////////
|
||||
gulp.task( 'copy-assets', function(done) {
|
||||
// Run:
|
||||
// gulp watch
|
||||
// Starts watcher. Watcher runs gulp sass task on changes
|
||||
gulp.task('watch', function () {
|
||||
gulp.watch([`${paths.sass}/**/*.scss`, `${paths.sass}/*.scss`], gulp.series('styles'));
|
||||
gulp.watch(
|
||||
[
|
||||
`${paths.dev}/js/**/*.js`,
|
||||
'js/**/*.js',
|
||||
'!js/theme.js',
|
||||
'!js/theme.min.js'
|
||||
],
|
||||
gulp.series('scripts')
|
||||
);
|
||||
|
||||
//Inside the watch task.
|
||||
gulp.watch(`${paths.imgsrc}/**`, gulp.series('imagemin-watch'));
|
||||
});
|
||||
|
||||
////////////////// All Bootstrap 4 Assets /////////////////////////
|
||||
// Copy all JS files
|
||||
gulp.src( paths.node + 'bootstrap/dist/js/**/*.js' )
|
||||
.pipe( gulp.dest( paths.dev + '/js/bootstrap4' ) );
|
||||
// Run:
|
||||
// gulp imagemin
|
||||
// Running image optimizing task
|
||||
gulp.task('imagemin', function () {
|
||||
gulp
|
||||
.src(`${paths.imgsrc}/**`)
|
||||
.pipe(imagemin())
|
||||
.pipe(gulp.dest(paths.img));
|
||||
});
|
||||
|
||||
// Copy all Bootstrap SCSS files
|
||||
gulp.src( paths.node + 'bootstrap/scss/**/*.scss' )
|
||||
.pipe( gulp.dest( paths.dev + '/sass/bootstrap4' ) );
|
||||
/**
|
||||
* Ensures the 'imagemin' task is complete before reloading browsers
|
||||
* @verbose
|
||||
*/
|
||||
gulp.task(
|
||||
'imagemin-watch',
|
||||
gulp.series('imagemin', function () {
|
||||
browserSync.reload();
|
||||
})
|
||||
);
|
||||
|
||||
////////////////// End Bootstrap 4 Assets /////////////////////////
|
||||
gulp.task('minifycss', function () {
|
||||
|
||||
// Copy all Font Awesome Fonts
|
||||
gulp.src( paths.node + 'font-awesome/fonts/**/*.{ttf,woff,woff2,eot,svg}' )
|
||||
.pipe( gulp.dest( './fonts' ) );
|
||||
return gulp
|
||||
.src([
|
||||
`${paths.css}/custom-editor-style.css`,
|
||||
`${paths.css}/theme.css`,
|
||||
])
|
||||
.pipe(sourcemaps.init({
|
||||
loadMaps: true
|
||||
}))
|
||||
.pipe(cleanCSS({
|
||||
compatibility: '*'
|
||||
}))
|
||||
.pipe(
|
||||
plumber({
|
||||
errorHandler: function (err) {
|
||||
console.log(err);
|
||||
this.emit('end');
|
||||
}
|
||||
})
|
||||
)
|
||||
.pipe(rename({ suffix: '.min' }))
|
||||
.pipe(sourcemaps.write('./'))
|
||||
.pipe(gulp.dest(paths.css))
|
||||
.pipe(touch());
|
||||
});
|
||||
|
||||
// Copy all Font Awesome SCSS files
|
||||
gulp.src( paths.node + 'font-awesome/scss/*.scss' )
|
||||
.pipe( gulp.dest( paths.dev + '/sass/fontawesome' ) );
|
||||
/**
|
||||
* Delete minified CSS files and their maps
|
||||
*/
|
||||
gulp.task('cleancss', function () {
|
||||
return del(paths.css + '/*.min.css*');
|
||||
});
|
||||
|
||||
// _s SCSS files
|
||||
gulp.src( paths.node + 'undescores-for-npm/sass/media/*.scss' )
|
||||
.pipe( gulp.dest( paths.dev + '/sass/underscores' ) );
|
||||
gulp.task('styles', function (callback) {
|
||||
gulp.series('sass', 'minifycss')(callback);
|
||||
});
|
||||
|
||||
// _s JS files into /src/js
|
||||
gulp.src( paths.node + 'undescores-for-npm/js/skip-link-focus-fix.js' )
|
||||
.pipe( gulp.dest( paths.dev + '/js' ) );
|
||||
// Run:
|
||||
// gulp browser-sync
|
||||
// Starts browser-sync task for starting the server.
|
||||
gulp.task('browser-sync', function () {
|
||||
browserSync.init(cfg.browserSyncWatchFiles, cfg.browserSyncOptions);
|
||||
});
|
||||
|
||||
// Copy Popper JS files
|
||||
gulp.src( paths.node + 'popper.js/dist/umd/popper.min.js' )
|
||||
.pipe( gulp.dest( paths.js + paths.vendor ) );
|
||||
gulp.src( paths.node + 'popper.js/dist/umd/popper.js' )
|
||||
.pipe( gulp.dest( paths.js + paths.vendor ) );
|
||||
// Run:
|
||||
// gulp scripts.
|
||||
// Uglifies and concat all JS files into one
|
||||
gulp.task('scripts', function () {
|
||||
var scripts = [
|
||||
// Start - All BS4 stuff
|
||||
`${paths.dev}/js/bootstrap4/bootstrap.bundle.js`,
|
||||
`${paths.dev}/js/themejs/*.js`,
|
||||
|
||||
done();
|
||||
// End - All BS4 stuff
|
||||
|
||||
`${paths.dev}/js/skip-link-focus-fix.js`,
|
||||
|
||||
// Adding currently empty javascript file to add on for your own themes´ customizations
|
||||
// Please add any customizations to this .js file only!
|
||||
`${paths.dev}/js/custom-javascript.js`
|
||||
];
|
||||
gulp
|
||||
.src(scripts, { allowEmpty: true })
|
||||
.pipe(babel({ presets: ['@babel/preset-env'] }))
|
||||
.pipe(concat('theme.min.js'))
|
||||
.pipe(uglify())
|
||||
.pipe(gulp.dest(paths.js));
|
||||
|
||||
return gulp
|
||||
.src(scripts, { allowEmpty: true })
|
||||
.pipe(babel())
|
||||
.pipe(concat('theme.js'))
|
||||
.pipe(gulp.dest(paths.js));
|
||||
});
|
||||
|
||||
// Deleting any file inside the /src folder
|
||||
gulp.task( 'clean-source', function() {
|
||||
return del( ['src/**/*', '!src'] );
|
||||
gulp.task('clean-source', function () {
|
||||
return del(['src/**/*']);
|
||||
});
|
||||
|
||||
// Run:
|
||||
// gulp watch-bs
|
||||
// Starts watcher with browser-sync. Browser-sync reloads page automatically on your browser
|
||||
gulp.task('watch-bs', gulp.parallel('browser-sync', 'watch'));
|
||||
|
||||
// Run:
|
||||
// gulp copy-assets.
|
||||
// Copy all needed dependency assets files from node_modules to theme's /js, /scss and /fonts folder. Run this task after npm update
|
||||
|
||||
////////////////// All Bootstrap SASS Assets /////////////////////////
|
||||
gulp.task('copy-assets', function (done) {
|
||||
////////////////// All Bootstrap 4 Assets /////////////////////////
|
||||
// Copy all JS files
|
||||
var stream = gulp
|
||||
.src(`${paths.node}/bootstrap/dist/js/**/*.js`)
|
||||
.pipe(gulp.dest(`${paths.dev}/js/bootstrap4`));
|
||||
|
||||
// Copy all Bootstrap SCSS files
|
||||
gulp
|
||||
.src(`${paths.node}/bootstrap/scss/**/*.scss`)
|
||||
.pipe(gulp.dest(`${paths.dev}/sass/bootstrap4`));
|
||||
|
||||
////////////////// End Bootstrap 4 Assets /////////////////////////
|
||||
|
||||
// Copy all Font Awesome Fonts
|
||||
gulp
|
||||
.src(`${paths.node}/font-awesome/fonts/**/*.{ttf,woff,woff2,eot,svg}`)
|
||||
.pipe(gulp.dest('./fonts'));
|
||||
|
||||
// Copy all Font Awesome SCSS files
|
||||
gulp
|
||||
.src(`${paths.node}/font-awesome/scss/*.scss`)
|
||||
.pipe(gulp.dest(`${paths.dev}/sass/fontawesome`));
|
||||
|
||||
// _s SCSS files
|
||||
gulp
|
||||
.src(`${paths.node}/undescores-for-npm/sass/media/*.scss`)
|
||||
.pipe(gulp.dest(`${paths.dev}/sass/underscores`));
|
||||
|
||||
// _s JS files into /src/js
|
||||
gulp
|
||||
.src(`${paths.node}/undescores-for-npm/js/skip-link-focus-fix.js`)
|
||||
.pipe(gulp.dest(`${paths.dev}/js`));
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
// Deleting the files distributed by the copy-assets task
|
||||
gulp.task('clean-vendor-assets', function () {
|
||||
return del([
|
||||
`${paths.dev}/js/bootstrap4/**`,
|
||||
`${paths.dev}/sass/bootstrap4/**`,
|
||||
'./fonts/*wesome*.{ttf,woff,woff2,eot,svg}',
|
||||
`${paths.dev}/sass/fontawesome/**`,
|
||||
`${paths.dev}/sass/underscores/**`,
|
||||
`${paths.dev}/js/skip-link-focus-fix.js`,
|
||||
`${paths.js}/**/skip-link-focus-fix.js`,
|
||||
`${paths.js}/**/popper.min.js`,
|
||||
`${paths.js}/**/popper.js`,
|
||||
paths.vendor !== '' ? paths.js + paths.vendor + '/**' : ''
|
||||
]);
|
||||
});
|
||||
|
||||
// Deleting any file inside the /dist folder
|
||||
gulp.task( 'clean-dist', function() {
|
||||
return del( ['dist/**/*', '!dist'] );
|
||||
gulp.task('clean-dist', function () {
|
||||
return del([paths.dist + '/**']);
|
||||
});
|
||||
|
||||
function revision( done ) {
|
||||
// by default, gulp would pick `assets/css` as the base,
|
||||
// so we need to set it explicitly:
|
||||
gulp.src([paths.css + '/theme.min.css', paths.js + '/theme.min.js'], {base: './'})
|
||||
.pipe(rev())
|
||||
.pipe(gulp.dest('./')) // write rev'd assets to build dir
|
||||
.pipe(rev.manifest())
|
||||
.pipe(revDel({dest: './'}))
|
||||
.pipe(gulp.dest('./')); // write manifest to build dir
|
||||
done();
|
||||
};
|
||||
|
||||
exports.revision = revision;
|
||||
|
||||
// Run
|
||||
// gulp dist
|
||||
// Copies the files to the /dist folder for distribution as simple theme
|
||||
gulp.task( 'dist', gulp.series( 'clean-dist', function(done) {
|
||||
|
||||
gulp.src( ['**/*', '!' + paths.bower, '!' + paths.bower + '/**', '!' + paths.node, '!' + paths.node + '/**', '!' + paths.dev, '!' + paths.dev + '/**', '!' + paths.dist, '!' + paths.dist + '/**', '!' + paths.distprod, '!' + paths.distprod + '/**', '!' + paths.sass, '!' + paths.sass + '/**', '!readme.txt', '!readme.md', '!package.json', '!package-lock.json', '!gulpfile.js', '!gulpconfig.json', '!CHANGELOG.md', '!.travis.yml', '!jshintignore', '!codesniffer.ruleset.xml', 'rev-manifest.json', '*'], { 'buffer': false } )
|
||||
.pipe( replace( '/js/jquery.slim.min.js', '/js' + paths.vendor + '/jquery.slim.min.js', { 'skipBinary': true } ) )
|
||||
.pipe( replace( '/js/popper.min.js', '/js' + paths.vendor + '/popper.min.js', { 'skipBinary': true } ) )
|
||||
.pipe( gulp.dest( paths.dist ) );
|
||||
done();
|
||||
|
||||
}));
|
||||
|
||||
// BrowserSync reload helper function
|
||||
function reload( done ){
|
||||
browserSync.reload();
|
||||
done();
|
||||
}
|
||||
|
||||
// BrowserSync main task
|
||||
gulp.task( 'watch-bs', function( done ) {
|
||||
browserSync.init( cfg.browserSyncWatchFiles, cfg.browserSyncOptions );
|
||||
gulp.watch( paths.sass + '/**/*.scss', gulp.series(scss, minifycss, revision, reload) );
|
||||
gulp.watch( [paths.dev + '/js/**/*.js', 'js/**/*.js', '!js/theme.js', '!js/theme.min.js'], gulp.series( scripts, revision, reload ) );
|
||||
|
||||
//Inside the watch task.
|
||||
gulp.watch( paths.imgsrc + '/**', gulp.series( imagemin, reload ) );
|
||||
done();
|
||||
gulp.task(
|
||||
'dist',
|
||||
gulp.series(['clean-dist'], function () {
|
||||
return gulp
|
||||
.src(
|
||||
[
|
||||
'**/*',
|
||||
`!${paths.node}`,
|
||||
`!${paths.node}/**`,
|
||||
`!${paths.dev}`,
|
||||
`!${paths.dev}/**`,
|
||||
`!${paths.dist}`,
|
||||
`!${paths.dist}/**`,
|
||||
`!${paths.distprod}`,
|
||||
`!${paths.distprod}/**`,
|
||||
`!${paths.sass}`,
|
||||
`!${paths.sass}/**`,
|
||||
`!${paths.composer}`,
|
||||
`!${paths.composer}/**`,
|
||||
'!readme.txt',
|
||||
'!README.md',
|
||||
'!*.+(json|js|lock|xml)',
|
||||
'!CHANGELOG.md',
|
||||
],
|
||||
{ buffer: true }
|
||||
)
|
||||
.pipe(
|
||||
replace(
|
||||
'/js/jquery.slim.min.js',
|
||||
'/js' + paths.vendor + '/jquery.slim.min.js',
|
||||
{ skipBinary: true }
|
||||
)
|
||||
)
|
||||
.pipe(
|
||||
replace('/js/popper.min.js', '/js' + paths.vendor + '/popper.min.js', {
|
||||
skipBinary: true
|
||||
})
|
||||
)
|
||||
.pipe(
|
||||
replace(
|
||||
'/js/skip-link-focus-fix.js',
|
||||
'/js' + paths.vendor + '/skip-link-focus-fix.js',
|
||||
{ skipBinary: true }
|
||||
)
|
||||
)
|
||||
.pipe(gulp.dest(paths.dist))
|
||||
.pipe(touch());
|
||||
})
|
||||
);
|
||||
|
||||
// Deleting any file inside the /dist-product folder
|
||||
gulp.task('clean-dist-product', function () {
|
||||
return del([paths.distprod + '/**']);
|
||||
});
|
||||
|
||||
// Run
|
||||
// gulp dist-product
|
||||
// Copies the files to the /dist-prod folder for distribution as theme with all assets
|
||||
gulp.task(
|
||||
'dist-product',
|
||||
gulp.series(['clean-dist-product'], function () {
|
||||
return gulp
|
||||
.src([
|
||||
'**/*',
|
||||
`!${paths.node}`,
|
||||
`!${paths.node}/**`,
|
||||
`!${paths.composer}`,
|
||||
`!${paths.composer}/**`,
|
||||
`!${paths.dist}`,
|
||||
`!${paths.dist}/**`,
|
||||
`!${paths.distprod}`,
|
||||
`!${paths.distprod}/**`,
|
||||
])
|
||||
.pipe(gulp.dest(paths.distprod))
|
||||
.pipe(touch());
|
||||
})
|
||||
);
|
||||
|
||||
// Run
|
||||
// gulp compile
|
||||
// Compiles the styles and scripts and runs the dist task
|
||||
gulp.task('compile', gulp.series('styles', 'scripts', 'dist'));
|
||||
|
||||
// Run:
|
||||
// gulp
|
||||
// Starts watcher (default task)
|
||||
gulp.task('default', gulp.series('watch'));
|
||||
|
|
48
header.php
48
header.php
|
@ -1,41 +1,43 @@
|
|||
<?php
|
||||
/**
|
||||
* The header for our theme.
|
||||
* The header for our theme
|
||||
*
|
||||
* Displays all of the <head> section and everything up till <div id="content">
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
$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">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<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 class="hfeed site" id="page">
|
||||
<body <?php body_class(); ?> <?php understrap_body_attributes(); ?>>
|
||||
<?php do_action( 'wp_body_open' ); ?>
|
||||
<div class="site" id="page">
|
||||
|
||||
<!-- ******************* The Navbar Area ******************* -->
|
||||
<div id="wrapper-navbar" itemscope itemtype="http://schema.org/WebSite">
|
||||
<div id="wrapper-navbar">
|
||||
|
||||
<a class="skip-link screen-reader-text sr-only" href="#content"><?php esc_html_e( 'Skip to content', 'understrap' ); ?></a>
|
||||
<a class="skip-link sr-only sr-only-focusable" href="#content"><?php esc_html_e( 'Skip to content', 'understrap' ); ?></a>
|
||||
|
||||
<nav class="navbar navbar-expand-md navbar-dark bg-primary">
|
||||
<nav id="main-nav" class="navbar fixed-top navbar-expand-md navbar-light bg-light" aria-labelledby="main-nav-label">
|
||||
|
||||
<?php if ( 'container' == $container ) : ?>
|
||||
<div class="container" >
|
||||
<h2 id="main-nav-label" class="sr-only">
|
||||
<?php esc_html_e( 'Main Navigation', 'understrap' ); ?>
|
||||
</h2>
|
||||
|
||||
<?php if ( 'container' === $container ) : ?>
|
||||
<div class="container">
|
||||
<?php endif; ?>
|
||||
|
||||
<!-- Your site title as branding in the menu -->
|
||||
|
@ -51,17 +53,20 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<?php endif; ?>
|
||||
|
||||
|
||||
<?php } else {
|
||||
<?php
|
||||
} else {
|
||||
the_custom_logo();
|
||||
} ?><!-- end custom logo -->
|
||||
}
|
||||
?>
|
||||
<!-- end custom logo -->
|
||||
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="<?php esc_attr_e( 'Toggle navigation', 'understrap' ); ?>">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
|
||||
<!-- The WordPress Menu goes here -->
|
||||
<?php wp_nav_menu(
|
||||
<?php
|
||||
wp_nav_menu(
|
||||
array(
|
||||
'theme_location' => 'primary',
|
||||
'container_class' => 'collapse navbar-collapse',
|
||||
|
@ -72,8 +77,9 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
'depth' => 2,
|
||||
'walker' => new Understrap_WP_Bootstrap_Navwalker(),
|
||||
)
|
||||
); ?>
|
||||
<?php if ( 'container' == $container ) : ?>
|
||||
);
|
||||
?>
|
||||
<?php if ( 'container' === $container ) : ?>
|
||||
</div><!-- .container -->
|
||||
<?php endif; ?>
|
||||
|
||||
|
|
Binary file not shown.
|
@ -5,6 +5,9 @@
|
|||
* @package WP-Bootstrap-Navwalker
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/*
|
||||
* Class Name: WP_Bootstrap_Navwalker
|
||||
* Plugin Name: WP Bootstrap Navwalker
|
||||
|
@ -17,7 +20,7 @@
|
|||
* GitHub Branch: master
|
||||
* License: GPL-3.0+
|
||||
* License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
||||
*/
|
||||
*/
|
||||
|
||||
/* Check if Class Exists. */
|
||||
if ( ! class_exists( 'Understrap_WP_Bootstrap_Navwalker' ) ) {
|
||||
|
@ -179,9 +182,14 @@ if ( ! class_exists( 'Understrap_WP_Bootstrap_Navwalker' ) ) {
|
|||
}
|
||||
|
||||
$atts['target'] = ! empty( $item->target ) ? $item->target : '';
|
||||
$atts['rel'] = ! empty( $item->xfn ) ? $item->xfn : '';
|
||||
if ( '_blank' === $item->target && empty( $item->xfn ) ) { // Thanks to LukaszJaro, see https://github.com/understrap/understrap/issues/973.
|
||||
$atts['rel'] = 'noopener noreferrer';
|
||||
} else {
|
||||
$atts['rel'] = $item->xfn;
|
||||
}
|
||||
|
||||
// If item has_children add atts to <a>.
|
||||
if ( isset( $args->has_children ) && $args->has_children && 0 === $depth && $args->depth > 1 ) {
|
||||
if ( isset( $args->has_children ) && $args->has_children && 0 === $depth && 1 !== $args->depth ) {
|
||||
$atts['href'] = '#';
|
||||
$atts['data-toggle'] = 'dropdown';
|
||||
$atts['aria-haspopup'] = 'true';
|
||||
|
@ -198,6 +206,8 @@ if ( ! class_exists( 'Understrap_WP_Bootstrap_Navwalker' ) ) {
|
|||
}
|
||||
}
|
||||
|
||||
$atts['aria-current'] = $item->current ? 'page' : '';
|
||||
|
||||
// update atts of this item based on any custom linkmod classes.
|
||||
$atts = self::update_atts_for_linkmod_type( $atts, $linkmod_classes );
|
||||
// Allow filtering of the $atts array before using it.
|
||||
|
@ -264,7 +274,7 @@ if ( ! class_exists( 'Understrap_WP_Bootstrap_Navwalker' ) ) {
|
|||
*/
|
||||
if ( in_array( 'sr-only', $linkmod_classes, true ) ) {
|
||||
$title = self::wrap_for_screen_reader( $title );
|
||||
$keys_to_unset = array_keys( $linkmod_classes, 'sr-only' );
|
||||
$keys_to_unset = array_keys( $linkmod_classes, 'sr-only', true );
|
||||
foreach ( $keys_to_unset as $k ) {
|
||||
unset( $linkmod_classes[ $k ] );
|
||||
}
|
||||
|
@ -371,7 +381,7 @@ if ( ! class_exists( 'Understrap_WP_Bootstrap_Navwalker' ) ) {
|
|||
|
||||
// if $args has 'echo' key and it's true echo, otherwise return.
|
||||
if ( array_key_exists( 'echo', $args ) && $args['echo'] ) {
|
||||
echo $fallback_output; // WPCS: XSS OK.
|
||||
echo $fallback_output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
} else {
|
||||
return $fallback_output;
|
||||
}
|
||||
|
|
|
@ -1,65 +1,106 @@
|
|||
<?php
|
||||
/**
|
||||
* Comment layout.
|
||||
* Comment layout
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Comments form.
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
// Add Bootstrap classes to comment form fields.
|
||||
add_filter( 'comment_form_default_fields', 'understrap_bootstrap_comment_form_fields' );
|
||||
|
||||
/**
|
||||
* Creates the comments form.
|
||||
*
|
||||
* @param string $fields Form fields.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
|
||||
if ( ! function_exists( 'understrap_bootstrap_comment_form_fields' ) ) {
|
||||
|
||||
/**
|
||||
* Add Bootstrap classes to WP's comment form default fields.
|
||||
*
|
||||
* @param array $fields {
|
||||
* Default comment fields.
|
||||
*
|
||||
* @type string $author Comment author field HTML.
|
||||
* @type string $email Comment author email field HTML.
|
||||
* @type string $url Comment author URL field HTML.
|
||||
* @type string $cookies Comment cookie opt-in field HTML.
|
||||
* }
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function understrap_bootstrap_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;
|
||||
$consent = empty( $commenter['comment_author_email'] ) ? '' : ' checked="checked"';
|
||||
$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>',
|
||||
'cookies' => '<div class="form-group form-check comment-form-cookies-consent"><input class="form-check-input" id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' /> ' .
|
||||
'<label class="form-check-label" for="wp-comment-cookies-consent">' . __( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></div>',
|
||||
|
||||
$replace = array(
|
||||
'<p class="' => '<div class="form-group ',
|
||||
'<input' => '<input class="form-control" ',
|
||||
'</p>' => '</div>',
|
||||
);
|
||||
|
||||
if ( isset( $fields['author'] ) ) {
|
||||
$fields['author'] = strtr( $fields['author'], $replace );
|
||||
}
|
||||
if ( isset( $fields['email'] ) ) {
|
||||
$fields['email'] = strtr( $fields['email'], $replace );
|
||||
}
|
||||
if ( isset( $fields['url'] ) ) {
|
||||
$fields['url'] = strtr( $fields['url'], $replace );
|
||||
}
|
||||
|
||||
$replace = array(
|
||||
'<p class="' => '<div class="form-group form-check ',
|
||||
'<input' => '<input class="form-check-input" ',
|
||||
'<label' => '<label class="form-check-label" ',
|
||||
'</p>' => '</div>',
|
||||
);
|
||||
if ( isset( $fields['cookies'] ) ) {
|
||||
$fields['cookies'] = strtr( $fields['cookies'], $replace );
|
||||
}
|
||||
|
||||
return $fields;
|
||||
}
|
||||
} // endif function_exists( 'understrap_bootstrap_comment_form_fields' )
|
||||
} // End of if function_exists( 'understrap_bootstrap_comment_form_fields' )
|
||||
|
||||
// Add Bootstrap classes to comment form submit button and comment field.
|
||||
add_filter( 'comment_form_defaults', 'understrap_bootstrap_comment_form' );
|
||||
|
||||
/**
|
||||
* Builds the form.
|
||||
*
|
||||
* @param string $args Arguments for form's fields.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
|
||||
if ( ! function_exists( 'understrap_bootstrap_comment_form' ) ) {
|
||||
|
||||
/**
|
||||
* Adds Bootstrap classes to comment form submit button and comment field.
|
||||
*
|
||||
* @param string[] $args Comment form arguments and fields.
|
||||
*
|
||||
* @return string[]
|
||||
*/
|
||||
function understrap_bootstrap_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" aria-required="true" cols="45" rows="8"></textarea>
|
||||
</div>';
|
||||
$args['class_submit'] = 'btn btn-secondary'; // since WP 4.1.
|
||||
$replace = array(
|
||||
'<p class="' => '<div class="form-group ',
|
||||
'<textarea' => '<textarea class="form-control" ',
|
||||
'</p>' => '</div>',
|
||||
);
|
||||
|
||||
if ( isset( $args['comment_field'] ) ) {
|
||||
$args['comment_field'] = strtr( $args['comment_field'], $replace );
|
||||
}
|
||||
|
||||
if ( isset( $args['class_submit'] ) ) {
|
||||
$args['class_submit'] = 'btn btn-secondary';
|
||||
}
|
||||
|
||||
return $args;
|
||||
}
|
||||
} // endif function_exists( 'understrap_bootstrap_comment_form' )
|
||||
} // End of if function_exists( 'understrap_bootstrap_comment_form' ).
|
||||
|
||||
|
||||
// Add note if comments are closed.
|
||||
add_action( 'comment_form_comments_closed', 'understrap_comment_form_comments_closed' );
|
||||
|
||||
if ( ! function_exists( 'understrap_comment_form_comments_closed' ) ) {
|
||||
/**
|
||||
* Displays a note that comments are closed if comments are closed and there are comments.
|
||||
*/
|
||||
function understrap_comment_form_comments_closed() {
|
||||
if ( get_comments_number() && post_type_supports( get_post_type(), 'comments' ) ) {
|
||||
?>
|
||||
<p class="no-comments"><?php esc_html_e( 'Comments are closed.', 'understrap' ); ?></p>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
} // End of if function_exists( 'understrap_comment_form_comments_closed' ).
|
||||
|
|
|
@ -1,13 +1,19 @@
|
|||
<?php
|
||||
/**
|
||||
* Custom header setup.
|
||||
* Custom header setup
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_action( 'after_setup_theme', 'understrap_custom_header_setup' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_custom_header_setup' ) ) {
|
||||
if ( ! function_exists( 'understrap_custom_header_setup' ) ) {
|
||||
/**
|
||||
* Set up custom header feature.
|
||||
*/
|
||||
function understrap_custom_header_setup() {
|
||||
|
||||
/**
|
||||
|
@ -18,28 +24,36 @@ if ( ! function_exists ( 'understrap_custom_header_setup' ) ) {
|
|||
* @param array $args {
|
||||
* An array of custom-header support arguments.
|
||||
*
|
||||
* @type string $default-image Default image of the header.
|
||||
* @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.
|
||||
* @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,
|
||||
) ) );
|
||||
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' ),
|
||||
),
|
||||
) );
|
||||
register_default_headers(
|
||||
array(
|
||||
'default-image' => array(
|
||||
'url' => '%s/img/header.jpg',
|
||||
'thumbnail_url' => '%s/img/header.jpg',
|
||||
'description' => __( 'Default Header Image', 'understrap' ),
|
||||
),
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
<?php
|
||||
/**
|
||||
* Understrap Theme Customizer
|
||||
* UnderStrap Theme Customizer
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Add postMessage support for site title and description for the Theme Customizer.
|
||||
*
|
||||
|
@ -33,40 +36,53 @@ if ( ! function_exists( 'understrap_theme_customize_register' ) ) {
|
|||
function understrap_theme_customize_register( $wp_customize ) {
|
||||
|
||||
// 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_section(
|
||||
'understrap_theme_layout_options',
|
||||
array(
|
||||
'title' => __( 'Theme Layout Settings', 'understrap' ),
|
||||
'capability' => 'edit_theme_options',
|
||||
'description' => __( 'Container width and sidebar defaults', 'understrap' ),
|
||||
'priority' => apply_filters( 'understrap_theme_layout_options_priority', 160 ),
|
||||
)
|
||||
);
|
||||
|
||||
//select sanitization function
|
||||
function understrap_theme_slug_sanitize_select( $input, $setting ){
|
||||
|
||||
//input must be a slug: lowercase alphanumeric characters, dashes and underscores are allowed only
|
||||
$input = sanitize_key($input);
|
||||
|
||||
//get the list of possible select options
|
||||
$choices = $setting->manager->get_control( $setting->id )->choices;
|
||||
|
||||
//return input if valid or return default option
|
||||
return ( array_key_exists( $input, $choices ) ? $input : $setting->default );
|
||||
|
||||
}
|
||||
/**
|
||||
* Select sanitization function
|
||||
*
|
||||
* @param string $input Slug to sanitize.
|
||||
* @param WP_Customize_Setting $setting Setting instance.
|
||||
* @return string Sanitized slug if it is a valid choice; otherwise, the setting default.
|
||||
*/
|
||||
function understrap_theme_slug_sanitize_select( $input, $setting ) {
|
||||
|
||||
$wp_customize->add_setting( 'understrap_container_type', array(
|
||||
'default' => 'container',
|
||||
'type' => 'theme_mod',
|
||||
'sanitize_callback' => 'understrap_theme_slug_sanitize_select',
|
||||
'capability' => 'edit_theme_options',
|
||||
) );
|
||||
// Ensure input is a slug (lowercase alphanumeric characters, dashes and underscores are allowed only).
|
||||
$input = sanitize_key( $input );
|
||||
|
||||
// Get the list of possible select options.
|
||||
$choices = $setting->manager->get_control( $setting->id )->choices;
|
||||
|
||||
// If the input is a valid key, return it; otherwise, return the default.
|
||||
return ( array_key_exists( $input, $choices ) ? $input : $setting->default );
|
||||
|
||||
}
|
||||
|
||||
$wp_customize->add_setting(
|
||||
'understrap_container_type',
|
||||
array(
|
||||
'default' => 'container',
|
||||
'type' => 'theme_mod',
|
||||
'sanitize_callback' => 'understrap_theme_slug_sanitize_select',
|
||||
'capability' => 'edit_theme_options',
|
||||
)
|
||||
);
|
||||
|
||||
$wp_customize->add_control(
|
||||
new WP_Customize_Control(
|
||||
$wp_customize,
|
||||
'understrap_container_type', array(
|
||||
'understrap_container_type',
|
||||
array(
|
||||
'label' => __( 'Container Width', 'understrap' ),
|
||||
'description' => __( "Choose between Bootstrap's container and container-fluid", 'understrap' ),
|
||||
'description' => __( 'Choose between Bootstrap\'s container and container-fluid', 'understrap' ),
|
||||
'section' => 'understrap_theme_layout_options',
|
||||
'settings' => 'understrap_container_type',
|
||||
'type' => 'select',
|
||||
|
@ -74,39 +90,47 @@ if ( ! function_exists( 'understrap_theme_customize_register' ) ) {
|
|||
'container' => __( 'Fixed width container', 'understrap' ),
|
||||
'container-fluid' => __( 'Full width container', 'understrap' ),
|
||||
),
|
||||
'priority' => '10',
|
||||
'priority' => apply_filters( 'understrap_container_type_priority', 10 ),
|
||||
)
|
||||
) );
|
||||
)
|
||||
);
|
||||
|
||||
$wp_customize->add_setting( 'understrap_sidebar_position', array(
|
||||
'default' => 'right',
|
||||
'type' => 'theme_mod',
|
||||
'sanitize_callback' => 'sanitize_text_field',
|
||||
'capability' => 'edit_theme_options',
|
||||
) );
|
||||
$wp_customize->add_setting(
|
||||
'understrap_sidebar_position',
|
||||
array(
|
||||
'default' => 'right',
|
||||
'type' => 'theme_mod',
|
||||
'sanitize_callback' => 'sanitize_text_field',
|
||||
'capability' => 'edit_theme_options',
|
||||
)
|
||||
);
|
||||
|
||||
$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',
|
||||
'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',
|
||||
'sanitize_callback' => 'understrap_theme_slug_sanitize_select',
|
||||
'choices' => array(
|
||||
'choices' => array(
|
||||
'right' => __( 'Right sidebar', 'understrap' ),
|
||||
'left' => __( 'Left sidebar', 'understrap' ),
|
||||
'both' => __( 'Left & Right sidebars', 'understrap' ),
|
||||
'none' => __( 'No sidebar', 'understrap' ),
|
||||
),
|
||||
'priority' => '20',
|
||||
'priority' => apply_filters( 'understrap_sidebar_position_priority', 20 ),
|
||||
)
|
||||
) );
|
||||
)
|
||||
);
|
||||
}
|
||||
} // endif function_exists( 'understrap_theme_customize_register' ).
|
||||
} // End of if function_exists( 'understrap_theme_customize_register' ).
|
||||
add_action( 'customize_register', 'understrap_theme_customize_register' );
|
||||
|
||||
/**
|
||||
|
@ -117,8 +141,13 @@ 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 );
|
||||
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' );
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
/**
|
||||
* Rest in peace
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! function_exists( 'understrap_slbd_count_widgets' ) ) {
|
||||
/**
|
||||
* 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
|
||||
*
|
||||
* @param int $sidebar_id The ID of the sidebar.
|
||||
* @deprecated 0.8.9
|
||||
*/
|
||||
function understrap_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() ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
|
||||
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 ( 0 == $widget_count % 4 || $widget_count > 6 ) : // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
|
||||
// Four widgets per row if there are exactly four or more than six.
|
||||
$widget_classes .= ' col-md-3';
|
||||
elseif ( 6 == $widget_count ) : // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
|
||||
// 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 ) : // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
|
||||
// If two widgets are published.
|
||||
$widget_classes .= ' col-md-6';
|
||||
elseif ( 1 == $widget_count ) : // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
|
||||
// If just on widget is active.
|
||||
$widget_classes .= ' col-md-12';
|
||||
endif;
|
||||
return $widget_classes;
|
||||
endif;
|
||||
}
|
||||
}
|
119
inc/editor.php
119
inc/editor.php
|
@ -1,74 +1,85 @@
|
|||
<?php
|
||||
/**
|
||||
* Understrap modify editor
|
||||
* UnderStrap modify editor
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
/**
|
||||
* Registers an editor stylesheet for the theme.
|
||||
*/
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_action( 'admin_init', 'understrap_wpdocs_theme_add_editor_styles' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_wpdocs_theme_add_editor_styles' ) ) {
|
||||
function understrap_wpdocs_theme_add_editor_styles() {
|
||||
add_editor_style( 'css/custom-editor-style.min.css' );
|
||||
}
|
||||
if ( ! function_exists( 'understrap_wpdocs_theme_add_editor_styles' ) ) {
|
||||
/**
|
||||
* Registers an editor stylesheet for the theme.
|
||||
*/
|
||||
function understrap_wpdocs_theme_add_editor_styles() {
|
||||
add_editor_style( 'css/custom-editor-style.min.css' );
|
||||
}
|
||||
}
|
||||
|
||||
// Add TinyMCE style formats.
|
||||
add_filter( 'mce_buttons_2', 'understrap_tiny_mce_style_formats' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_tiny_mce_style_formats' ) ) {
|
||||
function understrap_tiny_mce_style_formats( $styles ) {
|
||||
|
||||
array_unshift( $styles, 'styleselect' );
|
||||
return $styles;
|
||||
}
|
||||
if ( ! function_exists( 'understrap_tiny_mce_style_formats' ) ) {
|
||||
/**
|
||||
* Reveals TinyMCE's hidden Style dropdown.
|
||||
*
|
||||
* @param array $buttons Array of Tiny MCE's button ids.
|
||||
* @return array
|
||||
*/
|
||||
function understrap_tiny_mce_style_formats( $buttons ) {
|
||||
array_unshift( $buttons, 'styleselect' );
|
||||
return $buttons;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
add_filter( 'tiny_mce_before_init', 'understrap_tiny_mce_before_init' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_tiny_mce_before_init' ) ) {
|
||||
function understrap_tiny_mce_before_init( $settings ) {
|
||||
if ( ! function_exists( 'understrap_tiny_mce_before_init' ) ) {
|
||||
/**
|
||||
* Adds style options to TinyMCE's Style dropdown.
|
||||
*
|
||||
* @param array $settings TinyMCE settings array.
|
||||
* @return array
|
||||
*/
|
||||
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);
|
||||
}
|
||||
$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',
|
||||
),
|
||||
);
|
||||
|
||||
$settings['style_formats'] = json_encode( $style_formats );
|
||||
return $settings;
|
||||
}
|
||||
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'] = wp_json_encode( $style_formats );
|
||||
return $settings;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,25 +1,30 @@
|
|||
<?php
|
||||
/**
|
||||
* Understrap enqueue scripts
|
||||
* UnderStrap enqueue scripts
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param string $filename
|
||||
* @return string
|
||||
*/
|
||||
function asset_path($filename) {
|
||||
$manifest_path = get_stylesheet_directory() .'/rev-manifest.json';
|
||||
if ( file_exists($manifest_path ) ) {
|
||||
$manifest = json_decode( file_get_contents( $manifest_path ), TRUE );
|
||||
} else {
|
||||
$manifest = [];
|
||||
}
|
||||
if ( array_key_exists( $filename, $manifest ) ) {
|
||||
return $manifest[$filename];
|
||||
}
|
||||
return $filename;
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
function google_fonts() {
|
||||
$google_fonts = apply_filters(
|
||||
'storefront_google_font_families', array(
|
||||
// 'source-sans-pro' => 'Source+Sans+Pro:400,300,300italic,400italic,600,700,900',
|
||||
'montserrat' => 'Montserrat:400',
|
||||
'roboto' => 'Roboto:300,400,600',
|
||||
)
|
||||
);
|
||||
|
||||
$query_args = array(
|
||||
'family' => implode( '|', $google_fonts ),
|
||||
'subset' => rawurlencode( 'latin,latin-ext' ),
|
||||
);
|
||||
|
||||
$fonts_url = add_query_arg( $query_args, 'https://fonts.googleapis.com/css' );
|
||||
|
||||
return $fonts_url;
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'understrap_scripts' ) ) {
|
||||
|
@ -27,17 +32,23 @@ if ( ! function_exists( 'understrap_scripts' ) ) {
|
|||
* Load theme's JavaScript and CSS sources.
|
||||
*/
|
||||
function understrap_scripts() {
|
||||
// Get the theme data.
|
||||
$the_theme = wp_get_theme();
|
||||
$theme_version = $the_theme->get( 'Version' );
|
||||
|
||||
wp_enqueue_style( 'understrap-styles', get_stylesheet_directory_uri() . '/'. asset_path('css/theme.min.css'), array(), null);
|
||||
$css_version = $theme_version . '.' . filemtime( get_template_directory() . '/css/theme.min.css' );
|
||||
wp_enqueue_style( 'understrap-styles', get_template_directory_uri() . '/css/theme.min.css', array(), $css_version );
|
||||
|
||||
wp_enqueue_script( 'jquery');
|
||||
wp_enqueue_script( 'popper-scripts', get_template_directory_uri() . '/js/popper.min.js', array(), false, true);
|
||||
wp_enqueue_style( '_s-google-fonts', google_fonts(), array(), null );
|
||||
|
||||
wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . '/' . asset_path('js/theme.min.js'), array(), null, true );
|
||||
wp_enqueue_script( 'jquery' );
|
||||
|
||||
$js_version = $theme_version . '.' . filemtime( get_template_directory() . '/js/theme.min.js' );
|
||||
wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . '/js/theme.min.js', array(), $js_version, true );
|
||||
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
|
||||
wp_enqueue_script( 'comment-reply' );
|
||||
}
|
||||
}
|
||||
} // endif function_exists( 'understrap_scripts' ).
|
||||
} // End of if function_exists( 'understrap_scripts' ).
|
||||
|
||||
add_action( 'wp_enqueue_scripts', 'understrap_scripts' );
|
||||
|
|
194
inc/extras.php
194
inc/extras.php
|
@ -1,12 +1,15 @@
|
|||
<?php
|
||||
/**
|
||||
* Custom functions that act independently of the theme templates.
|
||||
* Custom functions that act independently of the theme templates
|
||||
*
|
||||
* Eventually, some of the functionality here could be replaced by core features.
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_filter( 'body_class', 'understrap_body_classes' );
|
||||
|
||||
if ( ! function_exists( 'understrap_body_classes' ) ) {
|
||||
|
@ -45,7 +48,7 @@ if ( ! function_exists( 'understrap_adjust_body_class' ) ) {
|
|||
function understrap_adjust_body_class( $classes ) {
|
||||
|
||||
foreach ( $classes as $key => $value ) {
|
||||
if ( 'tag' == $value ) {
|
||||
if ( 'tag' === $value ) {
|
||||
unset( $classes[ $key ] );
|
||||
}
|
||||
}
|
||||
|
@ -64,23 +67,22 @@ if ( ! function_exists( 'understrap_change_logo_class' ) ) {
|
|||
*
|
||||
* @param string $html Markup.
|
||||
*
|
||||
* @return mixed
|
||||
* @return string
|
||||
*/
|
||||
function understrap_change_logo_class( $html ) {
|
||||
|
||||
$html = str_replace( 'class="custom-logo"', 'class="img-fluid"', $html );
|
||||
$html = str_replace( 'class="custom-logo-link"', 'class="navbar-brand custom-logo-link"', $html );
|
||||
$html = str_replace( 'alt=""', 'title="Home" alt="logo"' , $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' ) ) {
|
||||
if ( ! function_exists( 'understrap_post_nav' ) ) {
|
||||
/**
|
||||
* Display navigation to next/previous post when applicable.
|
||||
*/
|
||||
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 );
|
||||
|
@ -90,21 +92,163 @@ if ( ! function_exists ( 'understrap_post_nav' ) ) {
|
|||
return;
|
||||
}
|
||||
?>
|
||||
<nav class="container navigation post-navigation">
|
||||
<h2 class="sr-only"><?php _e( 'Post navigation', 'understrap' ); ?></h2>
|
||||
<div class="row nav-links justify-content-between">
|
||||
<?php
|
||||
|
||||
if ( get_previous_post_link() ) {
|
||||
previous_post_link( '<span class="nav-previous">%link</span>', _x( '<i class="fa fa-angle-left"></i> %title', 'Previous post link', 'understrap' ) );
|
||||
}
|
||||
if ( get_next_post_link() ) {
|
||||
next_post_link( '<span class="nav-next">%link</span>', _x( '%title <i class="fa fa-angle-right"></i>', 'Next post link', 'understrap' ) );
|
||||
}
|
||||
?>
|
||||
</div><!-- .nav-links -->
|
||||
</nav><!-- .navigation -->
|
||||
|
||||
<nav class="container navigation post-navigation">
|
||||
<h2 class="sr-only"><?php esc_html_e( 'Post navigation', 'understrap' ); ?></h2>
|
||||
<div class="row nav-links justify-content-between">
|
||||
<?php
|
||||
if ( get_previous_post_link() ) {
|
||||
previous_post_link( '<span class="nav-previous">%link</span>', _x( '<i class="fa fa-angle-left"></i> %title', 'Previous post link', 'understrap' ) );
|
||||
}
|
||||
if ( get_next_post_link() ) {
|
||||
next_post_link( '<span class="nav-next">%link</span>', _x( '%title <i class="fa fa-angle-right"></i>', 'Next post link', 'understrap' ) );
|
||||
}
|
||||
?>
|
||||
</div><!-- .nav-links -->
|
||||
</nav><!-- .navigation -->
|
||||
<?php
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'understrap_pingback' ) ) {
|
||||
/**
|
||||
* Add a pingback url auto-discovery header for single posts of any post type.
|
||||
*/
|
||||
function understrap_pingback() {
|
||||
if ( is_singular() && pings_open() ) {
|
||||
echo '<link rel="pingback" href="' . esc_url( get_bloginfo( 'pingback_url' ) ) . '">' . "\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
add_action( 'wp_head', 'understrap_pingback' );
|
||||
|
||||
if ( ! function_exists( 'understrap_mobile_web_app_meta' ) ) {
|
||||
/**
|
||||
* Add mobile-web-app meta.
|
||||
*/
|
||||
function understrap_mobile_web_app_meta() {
|
||||
echo '<meta name="mobile-web-app-capable" content="yes">' . "\n";
|
||||
echo '<meta name="apple-mobile-web-app-capable" content="yes">' . "\n";
|
||||
echo '<meta name="apple-mobile-web-app-title" content="' . esc_attr( get_bloginfo( 'name' ) ) . ' - ' . esc_attr( get_bloginfo( 'description' ) ) . '">' . "\n";
|
||||
}
|
||||
}
|
||||
add_action( 'wp_head', 'understrap_mobile_web_app_meta' );
|
||||
|
||||
if ( ! function_exists( 'understrap_default_body_attributes' ) ) {
|
||||
/**
|
||||
* Adds schema markup to the body element.
|
||||
*
|
||||
* @param array $atts An associative array of attributes.
|
||||
* @return array
|
||||
*/
|
||||
function understrap_default_body_attributes( $atts ) {
|
||||
$atts['itemscope'] = '';
|
||||
$atts['itemtype'] = 'http://schema.org/WebSite';
|
||||
return $atts;
|
||||
}
|
||||
}
|
||||
add_filter( 'understrap_body_attributes', 'understrap_default_body_attributes' );
|
||||
|
||||
// Escapes all occurances of 'the_archive_description'.
|
||||
add_filter( 'get_the_archive_description', 'understrap_escape_the_archive_description' );
|
||||
|
||||
if ( ! function_exists( 'understrap_escape_the_archive_description' ) ) {
|
||||
/**
|
||||
* Escapes the description for an author or post type archive.
|
||||
*
|
||||
* @param string $description Archive description.
|
||||
* @return string Maybe escaped $description.
|
||||
*/
|
||||
function understrap_escape_the_archive_description( $description ) {
|
||||
if ( is_author() || is_post_type_archive() ) {
|
||||
return wp_kses_post( $description );
|
||||
} else {
|
||||
/*
|
||||
* All other descriptions are retrieved via term_description() which returns
|
||||
* a sanitized description.
|
||||
*/
|
||||
return $description;
|
||||
}
|
||||
}
|
||||
} // End of if function_exists( 'understrap_escape_the_archive_description' ).
|
||||
|
||||
// Escapes all occurances of 'the_title()' and 'get_the_title()'.
|
||||
add_filter( 'the_title', 'understrap_kses_title' );
|
||||
|
||||
// Escapes all occurances of 'the_archive_title' and 'get_the_archive_title()'.
|
||||
add_filter( 'get_the_archive_title', 'understrap_kses_title' );
|
||||
|
||||
if ( ! function_exists( 'understrap_kses_title' ) ) {
|
||||
/**
|
||||
* Sanitizes data for allowed HTML tags for post title.
|
||||
*
|
||||
* @param string $data Post title to filter.
|
||||
* @return string Filtered post title with allowed HTML tags and attributes intact.
|
||||
*/
|
||||
function understrap_kses_title( $data ) {
|
||||
// Tags not supported in HTML5 are not allowed.
|
||||
$allowed_tags = array(
|
||||
'abbr' => array(),
|
||||
'aria-describedby' => true,
|
||||
'aria-details' => true,
|
||||
'aria-label' => true,
|
||||
'aria-labelledby' => true,
|
||||
'aria-hidden' => true,
|
||||
'b' => array(),
|
||||
'bdo' => array(
|
||||
'dir' => true,
|
||||
),
|
||||
'blockquote' => array(
|
||||
'cite' => true,
|
||||
'lang' => true,
|
||||
'xml:lang' => true,
|
||||
),
|
||||
'cite' => array(
|
||||
'dir' => true,
|
||||
'lang' => true,
|
||||
),
|
||||
'dfn' => array(),
|
||||
'em' => array(),
|
||||
'i' => array(
|
||||
'aria-describedby' => true,
|
||||
'aria-details' => true,
|
||||
'aria-label' => true,
|
||||
'aria-labelledby' => true,
|
||||
'aria-hidden' => true,
|
||||
'class' => true,
|
||||
),
|
||||
'code' => array(),
|
||||
'del' => array(
|
||||
'datetime' => true,
|
||||
),
|
||||
'ins' => array(
|
||||
'datetime' => true,
|
||||
'cite' => true,
|
||||
),
|
||||
'kbd' => array(),
|
||||
'mark' => array(),
|
||||
'pre' => array(
|
||||
'width' => true,
|
||||
),
|
||||
'q' => array(
|
||||
'cite' => true,
|
||||
),
|
||||
's' => array(),
|
||||
'samp' => array(),
|
||||
'span' => array(
|
||||
'dir' => true,
|
||||
'align' => true,
|
||||
'lang' => true,
|
||||
'xml:lang' => true,
|
||||
),
|
||||
'small' => array(),
|
||||
'strong' => array(),
|
||||
'sub' => array(),
|
||||
'sup' => array(),
|
||||
'u' => array(),
|
||||
'var' => array(),
|
||||
);
|
||||
$allowed_tags = apply_filters( 'understrap_kses_title', $allowed_tags );
|
||||
|
||||
return wp_kses( $data, $allowed_tags );
|
||||
}
|
||||
} // End of if function_exists( 'understrap_kses_title' ).
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
<?php
|
||||
/**
|
||||
* Custom hooks
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! function_exists( 'understrap_site_info' ) ) {
|
||||
/**
|
||||
* Add site info hook to WP hook library.
|
||||
*/
|
||||
function understrap_site_info() {
|
||||
do_action( 'understrap_site_info' );
|
||||
}
|
||||
}
|
||||
|
||||
add_action( 'understrap_site_info', 'understrap_add_site_info' );
|
||||
if ( ! function_exists( 'understrap_add_site_info' ) ) {
|
||||
/**
|
||||
* Add site info content.
|
||||
*/
|
||||
function understrap_add_site_info() {
|
||||
$the_theme = wp_get_theme();
|
||||
|
||||
$site_info = sprintf(
|
||||
'<a href="%1$s">%2$s</a><span class="sep"> | </span>%3$s(%4$s)',
|
||||
esc_url( __( 'http://wordpress.org/', 'understrap' ) ),
|
||||
sprintf(
|
||||
/* translators: WordPress */
|
||||
esc_html__( 'Proudly powered by %s', 'understrap' ),
|
||||
'WordPress'
|
||||
),
|
||||
sprintf( // WPCS: XSS ok.
|
||||
/* translators: 1: Theme name, 2: Theme author */
|
||||
esc_html__( 'Theme: %1$s by %2$s.', 'understrap' ),
|
||||
$the_theme->get( 'Name' ),
|
||||
'<a href="' . esc_url( __( 'http://understrap.com', 'understrap' ) ) . '">understrap.com</a>'
|
||||
),
|
||||
sprintf( // WPCS: XSS ok.
|
||||
/* translators: Theme version */
|
||||
esc_html__( 'Version: %1$s', 'understrap' ),
|
||||
$the_theme->get( 'Version' )
|
||||
)
|
||||
);
|
||||
|
||||
echo apply_filters( 'understrap_site_info_content', $site_info ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
}
|
||||
}
|
|
@ -7,39 +7,43 @@
|
|||
* @package UnderStrap
|
||||
*/
|
||||
|
||||
/**
|
||||
* Jetpack setup function.
|
||||
*
|
||||
* See: https://jetpack.me/support/infinite-scroll/
|
||||
* See: https://jetpack.me/support/responsive-videos/
|
||||
*/
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_action( 'after_setup_theme', 'understrap_components_jetpack_setup' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_components_jetpack_setup' ) ) {
|
||||
if ( ! function_exists( 'understrap_components_jetpack_setup' ) ) {
|
||||
/**
|
||||
* Jetpack setup function.
|
||||
*
|
||||
* @link https://jetpack.me/support/infinite-scroll/
|
||||
* @link https://jetpack.me/support/responsive-videos/
|
||||
* @link https://jetpack.me/support/social-menu/
|
||||
*/
|
||||
function understrap_components_jetpack_setup() {
|
||||
// Add theme support for Infinite Scroll.
|
||||
add_theme_support( 'infinite-scroll', array(
|
||||
'container' => 'main',
|
||||
'render' => 'components_infinite_scroll_render',
|
||||
'footer' => 'page',
|
||||
) );
|
||||
add_theme_support(
|
||||
'infinite-scroll',
|
||||
array(
|
||||
'container' => 'main',
|
||||
'render' => 'understrap_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 for Social Menus.
|
||||
add_theme_support( 'jetpack-social-menu' );
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Custom render function for Infinite Scroll.
|
||||
*/
|
||||
|
||||
if ( ! function_exists ( 'understrap_components_infinite_scroll_render' ) ) {
|
||||
if ( ! function_exists( 'understrap_components_infinite_scroll_render' ) ) {
|
||||
/**
|
||||
* Custom render function for Infinite Scroll.
|
||||
*/
|
||||
function understrap_components_infinite_scroll_render() {
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
@ -52,12 +56,17 @@ if ( ! function_exists ( 'understrap_components_infinite_scroll_render' ) ) {
|
|||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists ( 'understrap_components_social_menu' ) ) {
|
||||
if ( ! function_exists( 'understrap_components_social_menu' ) ) {
|
||||
/**
|
||||
* Display Jetpack's social menu if available.
|
||||
* Avoids fatal errors if Jetpack isn’t activated.
|
||||
*/
|
||||
function understrap_components_social_menu() {
|
||||
if ( ! function_exists( 'jetpack_social_menu' ) ) {
|
||||
// Return early if social menu is not available.
|
||||
return;
|
||||
} else {
|
||||
jetpack_social_menu();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,52 +1,92 @@
|
|||
<?php
|
||||
/**
|
||||
* Pagination layout.
|
||||
* Pagination layout
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
if ( ! function_exists ( 'understrap_pagination' ) ) {
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
function understrap_pagination($args = [], $class = 'pagination') {
|
||||
if ( ! function_exists( 'understrap_pagination' ) ) {
|
||||
/**
|
||||
* Displays the navigation to next/previous set of posts.
|
||||
*
|
||||
* @param string|array $args {
|
||||
* (Optional) Array of arguments for generating paginated links for archives.
|
||||
*
|
||||
* @type string $base Base of the paginated url. Default empty.
|
||||
* @type string $format Format for the pagination structure. Default empty.
|
||||
* @type int $total The total amount of pages. Default is the value WP_Query's
|
||||
* `max_num_pages` or 1.
|
||||
* @type int $current The current page number. Default is 'paged' query var or 1.
|
||||
* @type string $aria_current The value for the aria-current attribute. Possible values are 'page',
|
||||
* 'step', 'location', 'date', 'time', 'true', 'false'. Default is 'page'.
|
||||
* @type bool $show_all Whether to show all pages. Default false.
|
||||
* @type int $end_size How many numbers on either the start and the end list edges.
|
||||
* Default 1.
|
||||
* @type int $mid_size How many numbers to either side of the current pages. Default 2.
|
||||
* @type bool $prev_next Whether to include the previous and next links in the list. Default true.
|
||||
* @type bool $prev_text The previous page text. Default '«'.
|
||||
* @type bool $next_text The next page text. Default '»'.
|
||||
* @type string $type Controls format of the returned value. Possible values are 'plain',
|
||||
* 'array' and 'list'. Default is 'array'.
|
||||
* @type array $add_args An array of query args to add. Default false.
|
||||
* @type string $add_fragment A string to append to each link. Default empty.
|
||||
* @type string $before_page_number A string to appear before the page number. Default empty.
|
||||
* @type string $after_page_number A string to append after the page number. Default empty.
|
||||
* @type string $screen_reader_text Screen reader text for the nav element. Default 'Posts navigation'.
|
||||
* }
|
||||
* @param string $class (Optional) Classes to be added to the <ul> element. Default 'pagination'.
|
||||
*/
|
||||
function understrap_pagination( $args = array(), $class = 'pagination' ) {
|
||||
|
||||
if ($GLOBALS['wp_query']->max_num_pages <= 1) return;
|
||||
if ( ! isset( $args['total'] ) && $GLOBALS['wp_query']->max_num_pages <= 1 ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$args = wp_parse_args( $args, [
|
||||
'mid_size' => 2,
|
||||
'prev_next' => true,
|
||||
'prev_text' => __('«', 'understrap'),
|
||||
'next_text' => __('»', 'understrap'),
|
||||
'screen_reader_text' => __('Posts navigation', 'understrap'),
|
||||
'type' => 'array',
|
||||
'current' => max( 1, get_query_var('paged') ),
|
||||
]);
|
||||
$args = wp_parse_args(
|
||||
$args,
|
||||
array(
|
||||
'mid_size' => 2,
|
||||
'prev_next' => true,
|
||||
'prev_text' => __( '«', 'understrap' ),
|
||||
'next_text' => __( '»', 'understrap' ),
|
||||
'type' => 'array',
|
||||
'current' => max( 1, get_query_var( 'paged' ) ),
|
||||
'screen_reader_text' => __( 'Posts navigation', 'understrap' ),
|
||||
)
|
||||
);
|
||||
|
||||
$links = paginate_links($args);
|
||||
$links = paginate_links( $args );
|
||||
if ( ! $links ) {
|
||||
return;
|
||||
}
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
<nav aria-label="<?php echo $args['screen_reader_text']; ?>">
|
||||
<nav aria-labelledby="posts-nav-label">
|
||||
|
||||
<ul class="pagination">
|
||||
<h2 id="posts-nav-label" class="sr-only">
|
||||
<?php echo esc_html( $args['screen_reader_text'] ); ?>
|
||||
</h2>
|
||||
|
||||
<?php
|
||||
<ul class="<?php echo esc_attr( $class ); ?>">
|
||||
|
||||
foreach ( $links as $key => $link ) { ?>
|
||||
<?php
|
||||
foreach ( $links as $key => $link ) {
|
||||
?>
|
||||
<li class="page-item <?php echo strpos( $link, 'current' ) ? 'active' : ''; ?>">
|
||||
<?php echo str_replace( 'page-numbers', 'page-link', $link ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
|
||||
</li>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
<li class="page-item <?php echo strpos( $link, 'current' ) ? 'active' : '' ?>">
|
||||
</ul>
|
||||
|
||||
<?php echo str_replace( 'page-numbers', 'page-link', $link ); ?>
|
||||
</nav>
|
||||
|
||||
</li>
|
||||
|
||||
<?php } ?>
|
||||
|
||||
</ul>
|
||||
|
||||
</nav>
|
||||
|
||||
<?php
|
||||
}
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
<?php
|
||||
/**
|
||||
* Theme basic setup.
|
||||
* Theme basic setup
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
// Set the content width based on the theme's design and stylesheet.
|
||||
if ( ! isset( $content_width ) ) {
|
||||
|
@ -13,7 +15,7 @@ if ( ! isset( $content_width ) ) {
|
|||
|
||||
add_action( 'after_setup_theme', 'understrap_setup' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_setup' ) ) {
|
||||
if ( ! function_exists( 'understrap_setup' ) ) {
|
||||
/**
|
||||
* Sets up theme defaults and registers support for various WordPress features.
|
||||
*
|
||||
|
@ -42,21 +44,28 @@ if ( ! function_exists ( 'understrap_setup' ) ) {
|
|||
add_theme_support( 'title-tag' );
|
||||
|
||||
// This theme uses wp_nav_menu() in one location.
|
||||
register_nav_menus( array(
|
||||
'primary' => __( 'Primary Menu', 'understrap' ),
|
||||
) );
|
||||
register_nav_menus(
|
||||
array(
|
||||
'primary' => __( 'Primary Menu', 'understrap' ),
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
* 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',
|
||||
) );
|
||||
add_theme_support(
|
||||
'html5',
|
||||
array(
|
||||
'search-form',
|
||||
'comment-form',
|
||||
'comment-list',
|
||||
'gallery',
|
||||
'caption',
|
||||
'script',
|
||||
'style',
|
||||
)
|
||||
);
|
||||
|
||||
/*
|
||||
* Adding Thumbnail basic support
|
||||
|
@ -72,23 +81,35 @@ if ( ! function_exists ( 'understrap_setup' ) ) {
|
|||
* Enable support for Post Formats.
|
||||
* See http://codex.wordpress.org/Post_Formats
|
||||
*/
|
||||
add_theme_support( 'post-formats', array(
|
||||
'aside',
|
||||
'image',
|
||||
'video',
|
||||
'quote',
|
||||
'link',
|
||||
) );
|
||||
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' => '',
|
||||
) ) );
|
||||
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' );
|
||||
|
||||
// Add support for responsive embedded content.
|
||||
add_theme_support( 'responsive-embeds' );
|
||||
|
||||
// Check and setup theme default settings.
|
||||
understrap_setup_theme_default_settings();
|
||||
|
||||
|
@ -107,7 +128,10 @@ if ( ! function_exists( 'understrap_custom_excerpt_more' ) ) {
|
|||
* @return string
|
||||
*/
|
||||
function understrap_custom_excerpt_more( $more ) {
|
||||
return '';
|
||||
if ( ! is_admin() ) {
|
||||
$more = '';
|
||||
}
|
||||
return $more;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -122,8 +146,12 @@ if ( ! function_exists( 'understrap_all_excerpts_get_more_link' ) ) {
|
|||
* @return string
|
||||
*/
|
||||
function understrap_all_excerpts_get_more_link( $post_excerpt ) {
|
||||
|
||||
return $post_excerpt . ' [...]<p><a class="btn btn-secondary understrap-read-more-link" href="' . esc_url( get_permalink( get_the_ID() )) . '">' . __( 'Read More...',
|
||||
'understrap' ) . '</a></p>';
|
||||
if ( ! is_admin() ) {
|
||||
$post_excerpt = $post_excerpt . ' [...]<p><a class="btn btn-secondary understrap-read-more-link" href="' . esc_url( get_permalink( get_the_ID() ) ) . '">' . __(
|
||||
'Read More...',
|
||||
'understrap'
|
||||
) . '</a></p>';
|
||||
}
|
||||
return $post_excerpt;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,57 +1,71 @@
|
|||
<?php
|
||||
/**
|
||||
* Custom template tags for this theme.
|
||||
* Custom template tags for this theme
|
||||
*
|
||||
* Eventually, some of the functionality here could be replaced by core features.
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* Prints HTML with meta information for the current post-date/time and author.
|
||||
*/
|
||||
if ( ! function_exists ( 'understrap_posted_on' ) ) {
|
||||
if ( ! function_exists( 'understrap_posted_on' ) ) {
|
||||
/**
|
||||
* Prints HTML with meta information for the current post-date/time and author.
|
||||
*/
|
||||
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"> (%4$s) </time>';
|
||||
}
|
||||
$time_string = sprintf( $time_string,
|
||||
$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>'
|
||||
$posted_on = apply_filters(
|
||||
'understrap_posted_on',
|
||||
sprintf(
|
||||
'<span class="posted-on">%1$s <a href="%2$s" rel="bookmark">%3$s</a></span>',
|
||||
esc_html_x( 'Posted on', 'post date', 'understrap' ),
|
||||
esc_url( get_permalink() ),
|
||||
apply_filters( 'understrap_posted_on_time', $time_string )
|
||||
)
|
||||
);
|
||||
$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>'
|
||||
$byline = apply_filters(
|
||||
'understrap_posted_by',
|
||||
sprintf(
|
||||
'<span class="byline"> %1$s<span class="author vcard"> <a class="url fn n" href="%2$s">%3$s</a></span></span>',
|
||||
$posted_on ? esc_html_x( 'by', 'post author', 'understrap' ) : esc_html_x( 'Posted by', 'post author', 'understrap' ),
|
||||
esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
|
||||
esc_html( get_the_author() )
|
||||
)
|
||||
);
|
||||
echo '<span class="posted-on">' . $posted_on . '</span><span class="byline"> ' . $byline . '</span>'; // WPCS: XSS OK.
|
||||
echo $posted_on . $byline; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Prints HTML with meta information for the categories, tags and comments.
|
||||
*/
|
||||
if ( ! function_exists ( 'understrap_entry_footer' ) ) {
|
||||
if ( ! function_exists( 'understrap_entry_footer' ) ) {
|
||||
/**
|
||||
* Prints HTML with meta information for the categories, tags and comments.
|
||||
*/
|
||||
function understrap_entry_footer() {
|
||||
// Hide category and tag text for pages.
|
||||
if ( 'post' === get_post_type() ) {
|
||||
/* translators: used between list items, there is a space after the comma */
|
||||
$categories_list = get_the_category_list( esc_html__( ', ', 'understrap' ) );
|
||||
if ( $categories_list && understrap_categorized_blog() ) {
|
||||
printf( '<span class="cat-links">' . esc_html__( 'Posted in %1$s', 'understrap' ) . '</span>', $categories_list ); // WPCS: XSS OK.
|
||||
/* translators: %s: Categories of current post */
|
||||
printf( '<span class="cat-links">' . esc_html__( 'Posted in %s', 'understrap' ) . '</span>', $categories_list ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
}
|
||||
/* translators: used between list items, there is a space after the comma */
|
||||
$tags_list = get_the_tag_list( '', esc_html__( ', ', 'understrap' ) );
|
||||
if ( $tags_list ) {
|
||||
printf( '<span class="tags-links">' . esc_html__( 'Tagged %1$s', 'understrap' ) . '</span>', $tags_list ); // WPCS: XSS OK.
|
||||
/* translators: %s: Tags of current post */
|
||||
printf( '<span class="tags-links">' . esc_html__( 'Tagged %s', 'understrap' ) . '</span>', $tags_list ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
}
|
||||
}
|
||||
if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) {
|
||||
|
@ -63,7 +77,7 @@ if ( ! function_exists ( 'understrap_entry_footer' ) ) {
|
|||
sprintf(
|
||||
/* translators: %s: Name of current post */
|
||||
esc_html__( 'Edit %s', 'understrap' ),
|
||||
the_title( '<span class="screen-reader-text">"', '"</span>', false )
|
||||
the_title( '<span class="sr-only">"', '"</span>', false )
|
||||
),
|
||||
'<span class="edit-link">',
|
||||
'</span>'
|
||||
|
@ -71,44 +85,45 @@ if ( ! function_exists ( 'understrap_entry_footer' ) ) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if a blog has more than 1 category.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
if ( ! function_exists ( 'understrap_categorized_blog' ) ) {
|
||||
if ( ! function_exists( 'understrap_categorized_blog' ) ) {
|
||||
/**
|
||||
* Returns true if a blog has more than 1 category.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function understrap_categorized_blog() {
|
||||
if ( false === ( $all_the_cool_cats = get_transient( 'understrap_categories' ) ) ) {
|
||||
$all_the_cool_cats = get_transient( 'understrap_categories' );
|
||||
if ( false === $all_the_cool_cats ) {
|
||||
// Create an array of all the categories that are attached to posts.
|
||||
$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,
|
||||
) );
|
||||
$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 components_categorized_blog should return true.
|
||||
// This blog has more than 1 category so understrap_categorized_blog should return true.
|
||||
return true;
|
||||
} else {
|
||||
// This blog has only 1 category so components_categorized_blog should return false.
|
||||
// This blog has only 1 category so understrap_categorized_blog should return false.
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Flush out the transients used in understrap_categorized_blog.
|
||||
*/
|
||||
add_action( 'edit_category', 'understrap_category_transient_flusher' );
|
||||
add_action( 'save_post', 'understrap_category_transient_flusher' );
|
||||
add_action( 'save_post', 'understrap_category_transient_flusher' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_category_transient_flusher' ) ) {
|
||||
if ( ! function_exists( 'understrap_category_transient_flusher' ) ) {
|
||||
/**
|
||||
* Flush out the transients used in understrap_categorized_blog.
|
||||
*/
|
||||
function understrap_category_transient_flusher() {
|
||||
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
|
||||
return;
|
||||
|
@ -116,4 +131,30 @@ if ( ! function_exists ( 'understrap_category_transient_flusher' ) ) {
|
|||
// Like, beat it. Dig?
|
||||
delete_transient( 'understrap_categories' );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'understrap_body_attributes' ) ) {
|
||||
/**
|
||||
* Displays the attributes for the body element.
|
||||
*/
|
||||
function understrap_body_attributes() {
|
||||
/**
|
||||
* Filters the body attributes.
|
||||
*
|
||||
* @param array $atts An associative array of attributes.
|
||||
*/
|
||||
$atts = array_unique( apply_filters( 'understrap_body_attributes', $atts = array() ) );
|
||||
if ( ! is_array( $atts ) || empty( $atts ) ) {
|
||||
return;
|
||||
}
|
||||
$attributes = '';
|
||||
foreach ( $atts as $name => $value ) {
|
||||
if ( $value ) {
|
||||
$attributes .= sanitize_key( $name ) . '="' . esc_attr( $value ) . '" ';
|
||||
} else {
|
||||
$attributes .= sanitize_key( $name ) . ' ';
|
||||
}
|
||||
}
|
||||
echo trim( $attributes ); // phpcs:ignore WordPress.Security.EscapeOutput
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,30 +3,45 @@
|
|||
* Check and setup theme's default settings
|
||||
*
|
||||
* @package understrap
|
||||
*
|
||||
*/
|
||||
|
||||
if ( ! function_exists ( 'understrap_setup_theme_default_settings' ) ) {
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! function_exists( 'understrap_setup_theme_default_settings' ) ) {
|
||||
/**
|
||||
* Store default theme settings in database.
|
||||
*/
|
||||
function understrap_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' );
|
||||
$defaults = understrap_get_theme_default_settings();
|
||||
$settings = get_theme_mods();
|
||||
foreach ( $defaults as $setting_id => $default_value ) {
|
||||
// Check if setting is set, if not set it to its default value.
|
||||
if ( ! isset( $settings[ $setting_id ] ) ) {
|
||||
set_theme_mod( $setting_id, $default_value );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'understrap_get_theme_default_settings' ) ) {
|
||||
/**
|
||||
* Retrieve default theme settings.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function understrap_get_theme_default_settings() {
|
||||
$defaults = array(
|
||||
'understrap_posts_index_style' => 'default', // Latest blog posts style.
|
||||
'understrap_sidebar_position' => 'right', // Sidebar position.
|
||||
'understrap_container_type' => 'container', // Container width.
|
||||
);
|
||||
|
||||
/**
|
||||
* Filters the default theme settings.
|
||||
*
|
||||
* @param array $defaults Array of default theme settings.
|
||||
*/
|
||||
return apply_filters( 'understrap_theme_default_settings', $defaults );
|
||||
}
|
||||
}
|
||||
|
|
223
inc/widgets.php
223
inc/widgets.php
|
@ -5,44 +5,91 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
/**
|
||||
* 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
|
||||
* Add filter to the parameters passed to a widget's display callback.
|
||||
* The filter is evaluated on both the front and the back end!
|
||||
*
|
||||
* @link https://developer.wordpress.org/reference/hooks/dynamic_sidebar_params/
|
||||
*/
|
||||
if ( ! function_exists( 'understrap_slbd_count_widgets' ) ) {
|
||||
function understrap_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;
|
||||
add_filter( 'dynamic_sidebar_params', 'understrap_widget_classes' );
|
||||
|
||||
$sidebars_widgets_count = $_wp_sidebars_widgets;
|
||||
if ( ! function_exists( 'understrap_widget_classes' ) ) {
|
||||
|
||||
if ( isset( $sidebars_widgets_count[ $sidebar_id ] ) ) :
|
||||
/**
|
||||
* Count number of visible widgets in a sidebar and add classes to widgets accordingly,
|
||||
* so widgets can be displayed one, two, three or four per row.
|
||||
*
|
||||
* @global array $sidebars_widgets
|
||||
*
|
||||
* @param array $params {
|
||||
* Parameters passed to a widget’s display callback.
|
||||
*
|
||||
* @type array $args {
|
||||
* An array of widget display arguments.
|
||||
*
|
||||
* @type string $name Name of the sidebar the widget is assigned to.
|
||||
* @type string $id ID of the sidebar the widget is assigned to.
|
||||
* @type string $description The sidebar description.
|
||||
* @type string $class CSS class applied to the sidebar container.
|
||||
* @type string $before_widget HTML markup to prepend to each widget in the sidebar.
|
||||
* @type string $after_widget HTML markup to append to each widget in the sidebar.
|
||||
* @type string $before_title HTML markup to prepend to the widget title when displayed.
|
||||
* @type string $after_title HTML markup to append to the widget title when displayed.
|
||||
* @type string $widget_id ID of the widget.
|
||||
* @type string $widget_name Name of the widget.
|
||||
* }
|
||||
* @type array $widget_args {
|
||||
* An array of multi-widget arguments.
|
||||
*
|
||||
* @type int $number Number increment used for multiples of the same widget.
|
||||
* }
|
||||
* }
|
||||
* @return array $params
|
||||
*/
|
||||
function understrap_widget_classes( $params ) {
|
||||
|
||||
global $sidebars_widgets;
|
||||
|
||||
/*
|
||||
* When the corresponding filter is evaluated on the front end
|
||||
* this takes into account that there might have been made other changes.
|
||||
*/
|
||||
$sidebars_widgets_count = apply_filters( 'sidebars_widgets', $sidebars_widgets );
|
||||
|
||||
// Only apply changes if sidebar ID is set and the widget's classes depend on the number of widgets in the sidebar.
|
||||
if ( isset( $params[0]['id'] ) && strpos( $params[0]['before_widget'], 'dynamic-classes' ) ) {
|
||||
$sidebar_id = $params[0]['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 per row if there are exactly four or more than six
|
||||
|
||||
$widget_classes = 'widget-count-' . $widget_count;
|
||||
if ( 0 === $widget_count % 4 || $widget_count > 6 ) {
|
||||
// Four widgets per row if there are exactly four or more than six.
|
||||
$widget_classes .= ' col-md-3';
|
||||
elseif ( 6 == $widget_count ) :
|
||||
// If two widgets are published
|
||||
} 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
|
||||
} 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
|
||||
} elseif ( 2 === $widget_count ) {
|
||||
// If two widgets are published.
|
||||
$widget_classes .= ' col-md-6';
|
||||
elseif ( 1 == $widget_count ) :
|
||||
// If just on widget is active
|
||||
} elseif ( 1 === $widget_count ) {
|
||||
// If just on widget is active.
|
||||
$widget_classes .= ' col-md-12';
|
||||
endif;
|
||||
return $widget_classes;
|
||||
endif;
|
||||
}
|
||||
|
||||
// Replace the placeholder class 'dynamic-classes' with the classes stored in $widget_classes.
|
||||
$params[0]['before_widget'] = str_replace( 'dynamic-classes', $widget_classes, $params[0]['before_widget'] );
|
||||
}
|
||||
|
||||
return $params;
|
||||
|
||||
}
|
||||
}
|
||||
} // End of if function_exists( 'understrap_widget_classes' ).
|
||||
|
||||
add_action( 'widgets_init', 'understrap_widgets_init' );
|
||||
|
||||
|
@ -51,65 +98,77 @@ 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' => __( 'Right Sidebar', 'understrap' ),
|
||||
'id' => 'right-sidebar',
|
||||
'description' => __( 'Right sidebar widget area', 'understrap' ),
|
||||
'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' => __( 'Left Sidebar', 'understrap' ),
|
||||
'id' => 'left-sidebar',
|
||||
'description' => __( 'Left sidebar widget area', 'understrap' ),
|
||||
'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 Slider', 'understrap' ),
|
||||
'id' => 'hero',
|
||||
'description' => __( 'Hero slider area. Place two or more widgets here and they will slide!', 'understrap' ),
|
||||
'before_widget' => '<div class="carousel-item">',
|
||||
'after_widget' => '</div>',
|
||||
'before_title' => '',
|
||||
'after_title' => '',
|
||||
)
|
||||
);
|
||||
|
||||
register_sidebar( array(
|
||||
'name' => __( 'Hero Canvas', 'understrap' ),
|
||||
'id' => 'herocanvas',
|
||||
'description' => 'Full size canvas hero area for Bootstrap and other custom HTML markup',
|
||||
'before_widget' => '',
|
||||
'after_widget' => '',
|
||||
'before_title' => '',
|
||||
'after_title' => '',
|
||||
) );
|
||||
register_sidebar(
|
||||
array(
|
||||
'name' => __( 'Hero Canvas', 'understrap' ),
|
||||
'id' => 'herocanvas',
|
||||
'description' => __( 'Full size canvas hero area for Bootstrap and other custom HTML markup', 'understrap' ),
|
||||
'before_widget' => '',
|
||||
'after_widget' => '',
|
||||
'before_title' => '',
|
||||
'after_title' => '',
|
||||
)
|
||||
);
|
||||
|
||||
register_sidebar( array(
|
||||
'name' => __( 'Top Full', 'understrap' ),
|
||||
'id' => 'statichero',
|
||||
'description' => 'Full top widget with dynmic grid',
|
||||
'before_widget' => '<div id="%1$s" class="static-hero-widget %2$s '. understrap_slbd_count_widgets( 'statichero' ) .'">',
|
||||
'after_widget' => '</div><!-- .static-hero-widget -->',
|
||||
'before_title' => '<h3 class="widget-title">',
|
||||
'after_title' => '</h3>',
|
||||
) );
|
||||
register_sidebar(
|
||||
array(
|
||||
'name' => __( 'Top Full', 'understrap' ),
|
||||
'id' => 'statichero',
|
||||
'description' => __( 'Full top widget with dynamic grid', 'understrap' ),
|
||||
'before_widget' => '<div id="%1$s" class="static-hero-widget %2$s dynamic-classes">',
|
||||
'after_widget' => '</div><!-- .static-hero-widget -->',
|
||||
'before_title' => '<h3 class="widget-title">',
|
||||
'after_title' => '</h3>',
|
||||
)
|
||||
);
|
||||
|
||||
register_sidebar( array(
|
||||
'name' => __( 'Bottom Full', 'understrap' ),
|
||||
'id' => 'footerfull',
|
||||
'description' => 'Full bottom widget with dynmic grid',
|
||||
'before_widget' => '<div id="%1$s" class="footer-widget %2$s '. understrap_slbd_count_widgets( 'footerfull' ) .'">',
|
||||
'after_widget' => '</div><!-- .footer-widget -->',
|
||||
'before_title' => '<h3 class="widget-title">',
|
||||
'after_title' => '</h3>',
|
||||
) );
|
||||
register_sidebar(
|
||||
array(
|
||||
'name' => __( 'Footer Full', 'understrap' ),
|
||||
'id' => 'footerfull',
|
||||
'description' => __( 'Full sized footer widget with dynamic grid', 'understrap' ),
|
||||
'before_widget' => '<div id="%1$s" class="footer-widget %2$s dynamic-classes">',
|
||||
'after_widget' => '</div><!-- .footer-widget -->',
|
||||
'before_title' => '<h3 class="widget-title">',
|
||||
'after_title' => '</h3>',
|
||||
)
|
||||
);
|
||||
|
||||
}
|
||||
} // endif function_exists( 'understrap_widgets_init' ).
|
||||
} // End of function_exists( 'understrap_widgets_init' ).
|
||||
|
|
|
@ -5,6 +5,8 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_action( 'after_setup_theme', 'understrap_woocommerce_support' );
|
||||
if ( ! function_exists( 'understrap_woocommerce_support' ) ) {
|
||||
|
@ -14,7 +16,7 @@ if ( ! function_exists( 'understrap_woocommerce_support' ) ) {
|
|||
function understrap_woocommerce_support() {
|
||||
add_theme_support( 'woocommerce' );
|
||||
|
||||
// Add New Woocommerce 3.0.0 Product Gallery support
|
||||
// Add New Woocommerce 3.0.0 Product Gallery support.
|
||||
add_theme_support( 'wc-product-gallery-lightbox' );
|
||||
add_theme_support( 'wc-product-gallery-zoom' );
|
||||
add_theme_support( 'wc-product-gallery-slider' );
|
||||
|
@ -24,55 +26,57 @@ if ( ! function_exists( 'understrap_woocommerce_support' ) ) {
|
|||
}
|
||||
}
|
||||
|
||||
// First unhook the WooCommerce content wrappers.
|
||||
remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 );
|
||||
remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10 );
|
||||
|
||||
/**
|
||||
* First unhook the WooCommerce wrappers
|
||||
*/
|
||||
remove_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10);
|
||||
remove_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10);
|
||||
// Then hook in your own functions to display the wrappers your theme requires.
|
||||
add_action( 'woocommerce_before_main_content', 'understrap_woocommerce_wrapper_start', 10 );
|
||||
add_action( 'woocommerce_after_main_content', 'understrap_woocommerce_wrapper_end', 10 );
|
||||
|
||||
/**
|
||||
* Then hook in your own functions to display the wrappers your theme requires
|
||||
*/
|
||||
add_action('woocommerce_before_main_content', 'understrap_woocommerce_wrapper_start', 10);
|
||||
add_action('woocommerce_after_main_content', 'understrap_woocommerce_wrapper_end', 10);
|
||||
if ( ! function_exists( 'understrap_woocommerce_wrapper_start' ) ) {
|
||||
/**
|
||||
* Display the theme specific start of the page wrapper.
|
||||
*/
|
||||
function understrap_woocommerce_wrapper_start() {
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
echo '<div class="wrapper" id="woocommerce-wrapper">';
|
||||
echo '<div class="' . esc_attr( $container ) . '" id="content" tabindex="-1">';
|
||||
echo '<div class="' . esc_attr( $container ) . '" id="content" tabindex="-1">';
|
||||
echo '<div class="row">';
|
||||
get_template_part( 'global-templates/left-sidebar-check' );
|
||||
echo '<main class="site-main" id="main">';
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'understrap_woocommerce_wrapper_end' ) ) {
|
||||
function understrap_woocommerce_wrapper_end() {
|
||||
echo '</main><!-- #main -->';
|
||||
get_template_part( 'global-templates/right-sidebar-check' );
|
||||
echo '</div><!-- .row -->';
|
||||
echo '</div><!-- Container end -->';
|
||||
echo '</div><!-- Wrapper end -->';
|
||||
/**
|
||||
* Display the theme specific end of the page wrapper.
|
||||
*/
|
||||
function understrap_woocommerce_wrapper_end() {
|
||||
echo '</main><!-- #main -->';
|
||||
get_template_part( 'global-templates/right-sidebar-check' );
|
||||
echo '</div><!-- .row -->';
|
||||
echo '</div><!-- Container end -->';
|
||||
echo '</div><!-- Wrapper end -->';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 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
|
||||
*/
|
||||
if ( ! function_exists ( 'understrap_wc_form_field_args' ) ) {
|
||||
if ( ! function_exists( 'understrap_wc_form_field_args' ) ) {
|
||||
/**
|
||||
* 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 understrap_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' :
|
||||
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';
|
||||
|
@ -88,13 +92,13 @@ if ( ! function_exists ( 'understrap_wc_form_field_args' ) ) {
|
|||
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' :
|
||||
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' :
|
||||
case 'state':
|
||||
// Add class to the field's html element wrapper.
|
||||
$args['class'][] = 'form-group';
|
||||
// add class to the form input itself.
|
||||
|
@ -106,33 +110,57 @@ if ( ! function_exists ( 'understrap_wc_form_field_args' ) ) {
|
|||
'aria-hidden' => 'true',
|
||||
);
|
||||
break;
|
||||
case 'password' :
|
||||
case 'text' :
|
||||
case 'email' :
|
||||
case 'tel' :
|
||||
case 'number' :
|
||||
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' :
|
||||
case 'textarea':
|
||||
$args['input_class'] = array( 'form-control', 'input-lg' );
|
||||
$args['label_class'] = array( 'control-label' );
|
||||
break;
|
||||
case 'checkbox' :
|
||||
case 'checkbox':
|
||||
$args['label_class'] = array( 'custom-control custom-checkbox' );
|
||||
$args['input_class'] = array( 'custom-control-input', 'input-lg' );
|
||||
break;
|
||||
case 'radio' :
|
||||
case 'radio':
|
||||
$args['label_class'] = array( 'custom-control custom-radio' );
|
||||
$args['input_class'] = array( 'custom-control-input', 'input-lg' );
|
||||
break;
|
||||
default :
|
||||
default:
|
||||
$args['class'][] = 'form-group';
|
||||
$args['input_class'] = array( 'form-control', 'input-lg' );
|
||||
$args['label_class'] = array( 'control-label' );
|
||||
break;
|
||||
} // end switch ($args).
|
||||
} // End of switch ( $args ).
|
||||
return $args;
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! is_admin() && ! function_exists( 'wc_review_ratings_enabled' ) ) {
|
||||
/**
|
||||
* Check if reviews are enabled.
|
||||
*
|
||||
* Function introduced in WooCommerce 3.6.0., include it for backward compatibility.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function wc_reviews_enabled() {
|
||||
return 'yes' === get_option( 'woocommerce_enable_reviews' );
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if reviews ratings are enabled.
|
||||
*
|
||||
* Function introduced in WooCommerce 3.6.0., include it for backward compatibility.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function wc_review_ratings_enabled() {
|
||||
return wc_reviews_enabled() && 'yes' === get_option( 'woocommerce_enable_review_rating' );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,14 +7,17 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
/**
|
||||
* Adds support for wp.com-specific theme functions.
|
||||
*
|
||||
* @global array $themecolors
|
||||
*/
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
add_action( 'after_setup_theme', 'understrap_wpcom_setup' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_wpcom_setup' ) ) {
|
||||
if ( ! function_exists( 'understrap_wpcom_setup' ) ) {
|
||||
/**
|
||||
* Adds support for wp.com-specific theme functions.
|
||||
*
|
||||
* @global array $themecolors
|
||||
*/
|
||||
function understrap_wpcom_setup() {
|
||||
global $themecolors;
|
||||
|
||||
|
@ -28,20 +31,19 @@ if ( ! function_exists ( 'understrap_wpcom_setup' ) ) {
|
|||
'url' => '',
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
/* Add WP.com print styles */
|
||||
add_theme_support( 'print-styles' );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* WordPress.com-specific styles
|
||||
*/
|
||||
add_action( 'wp_enqueue_scripts', 'understrap_wpcom_styles' );
|
||||
|
||||
if ( ! function_exists ( 'understrap_wpcom_styles' ) ) {
|
||||
if ( ! function_exists( 'understrap_wpcom_styles' ) ) {
|
||||
/**
|
||||
* WordPress.com-specific styles
|
||||
*/
|
||||
function understrap_wpcom_styles() {
|
||||
wp_enqueue_style( 'understrap-wpcom', get_template_directory_uri() . '/inc/style-wpcom.css', '20160411' );
|
||||
wp_enqueue_style( 'understrap-wpcom', get_template_directory_uri() . '/inc/style-wpcom.css', array(), '20160411' );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
47
index.php
47
index.php
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/**
|
||||
* The main template file.
|
||||
* The main template file
|
||||
*
|
||||
* This is the most generic template file in a WordPress theme
|
||||
* and one of the two required files for a theme (the other being style.css).
|
||||
|
@ -11,9 +11,12 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
<?php if ( is_front_page() && is_home() ) : ?>
|
||||
|
@ -31,13 +34,11 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<main class="site-main" id="main">
|
||||
|
||||
<?php if ( have_posts() ) : ?>
|
||||
|
||||
<?php /* Start the Loop */ ?>
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
|
||||
<?php
|
||||
<?php
|
||||
if ( have_posts() ) {
|
||||
// Start the Loop.
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
||||
/*
|
||||
* Include the Post-Format-specific template for the content.
|
||||
|
@ -45,29 +46,25 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
* 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; ?>
|
||||
}
|
||||
} else {
|
||||
get_template_part( 'loop-templates/content', 'none' );
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
<!-- The pagination component -->
|
||||
<?php understrap_pagination(); ?>
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
|
||||
</div><!-- .row -->
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #index-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
Binary file not shown.
476
js/core.js
476
js/core.js
|
@ -1,476 +0,0 @@
|
|||
/* global Symbol */
|
||||
// Defining this global in .eslintrc.json would create a danger of using the global
|
||||
// unguarded in another place, it seems safer to define global only for this module
|
||||
|
||||
define( [
|
||||
"./var/arr",
|
||||
"./var/document",
|
||||
"./var/getProto",
|
||||
"./var/slice",
|
||||
"./var/concat",
|
||||
"./var/push",
|
||||
"./var/indexOf",
|
||||
"./var/class2type",
|
||||
"./var/toString",
|
||||
"./var/hasOwn",
|
||||
"./var/fnToString",
|
||||
"./var/ObjectFunctionString",
|
||||
"./var/support",
|
||||
"./core/DOMEval"
|
||||
], function( arr, document, getProto, slice, concat, push, indexOf,
|
||||
class2type, toString, hasOwn, fnToString, ObjectFunctionString,
|
||||
support, DOMEval ) {
|
||||
|
||||
"use strict";
|
||||
|
||||
var
|
||||
version = "3.2.1",
|
||||
|
||||
// Define a local copy of jQuery
|
||||
jQuery = function( selector, context ) {
|
||||
|
||||
// The jQuery object is actually just the init constructor 'enhanced'
|
||||
// Need init if jQuery is called (just allow error to be thrown if not included)
|
||||
return new jQuery.fn.init( selector, context );
|
||||
},
|
||||
|
||||
// Support: Android <=4.0 only
|
||||
// Make sure we trim BOM and NBSP
|
||||
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
|
||||
|
||||
// Matches dashed string for camelizing
|
||||
rmsPrefix = /^-ms-/,
|
||||
rdashAlpha = /-([a-z])/g,
|
||||
|
||||
// Used by jQuery.camelCase as callback to replace()
|
||||
fcamelCase = function( all, letter ) {
|
||||
return letter.toUpperCase();
|
||||
};
|
||||
|
||||
jQuery.fn = jQuery.prototype = {
|
||||
|
||||
// The current version of jQuery being used
|
||||
jquery: version,
|
||||
|
||||
constructor: jQuery,
|
||||
|
||||
// The default length of a jQuery object is 0
|
||||
length: 0,
|
||||
|
||||
toArray: function() {
|
||||
return slice.call( this );
|
||||
},
|
||||
|
||||
// Get the Nth element in the matched element set OR
|
||||
// Get the whole matched element set as a clean array
|
||||
get: function( num ) {
|
||||
|
||||
// Return all the elements in a clean array
|
||||
if ( num == null ) {
|
||||
return slice.call( this );
|
||||
}
|
||||
|
||||
// Return just the one element from the set
|
||||
return num < 0 ? this[ num + this.length ] : this[ num ];
|
||||
},
|
||||
|
||||
// Take an array of elements and push it onto the stack
|
||||
// (returning the new matched element set)
|
||||
pushStack: function( elems ) {
|
||||
|
||||
// Build a new jQuery matched element set
|
||||
var ret = jQuery.merge( this.constructor(), elems );
|
||||
|
||||
// Add the old object onto the stack (as a reference)
|
||||
ret.prevObject = this;
|
||||
|
||||
// Return the newly-formed element set
|
||||
return ret;
|
||||
},
|
||||
|
||||
// Execute a callback for every element in the matched set.
|
||||
each: function( callback ) {
|
||||
return jQuery.each( this, callback );
|
||||
},
|
||||
|
||||
map: function( callback ) {
|
||||
return this.pushStack( jQuery.map( this, function( elem, i ) {
|
||||
return callback.call( elem, i, elem );
|
||||
} ) );
|
||||
},
|
||||
|
||||
slice: function() {
|
||||
return this.pushStack( slice.apply( this, arguments ) );
|
||||
},
|
||||
|
||||
first: function() {
|
||||
return this.eq( 0 );
|
||||
},
|
||||
|
||||
last: function() {
|
||||
return this.eq( -1 );
|
||||
},
|
||||
|
||||
eq: function( i ) {
|
||||
var len = this.length,
|
||||
j = +i + ( i < 0 ? len : 0 );
|
||||
return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
|
||||
},
|
||||
|
||||
end: function() {
|
||||
return this.prevObject || this.constructor();
|
||||
},
|
||||
|
||||
// For internal use only.
|
||||
// Behaves like an Array's method, not like a jQuery method.
|
||||
push: push,
|
||||
sort: arr.sort,
|
||||
splice: arr.splice
|
||||
};
|
||||
|
||||
jQuery.extend = jQuery.fn.extend = function() {
|
||||
var options, name, src, copy, copyIsArray, clone,
|
||||
target = arguments[ 0 ] || {},
|
||||
i = 1,
|
||||
length = arguments.length,
|
||||
deep = false;
|
||||
|
||||
// Handle a deep copy situation
|
||||
if ( typeof target === "boolean" ) {
|
||||
deep = target;
|
||||
|
||||
// Skip the boolean and the target
|
||||
target = arguments[ i ] || {};
|
||||
i++;
|
||||
}
|
||||
|
||||
// Handle case when target is a string or something (possible in deep copy)
|
||||
if ( typeof target !== "object" && !jQuery.isFunction( target ) ) {
|
||||
target = {};
|
||||
}
|
||||
|
||||
// Extend jQuery itself if only one argument is passed
|
||||
if ( i === length ) {
|
||||
target = this;
|
||||
i--;
|
||||
}
|
||||
|
||||
for ( ; i < length; i++ ) {
|
||||
|
||||
// Only deal with non-null/undefined values
|
||||
if ( ( options = arguments[ i ] ) != null ) {
|
||||
|
||||
// Extend the base object
|
||||
for ( name in options ) {
|
||||
src = target[ name ];
|
||||
copy = options[ name ];
|
||||
|
||||
// Prevent never-ending loop
|
||||
if ( target === copy ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Recurse if we're merging plain objects or arrays
|
||||
if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
|
||||
( copyIsArray = Array.isArray( copy ) ) ) ) {
|
||||
|
||||
if ( copyIsArray ) {
|
||||
copyIsArray = false;
|
||||
clone = src && Array.isArray( src ) ? src : [];
|
||||
|
||||
} else {
|
||||
clone = src && jQuery.isPlainObject( src ) ? src : {};
|
||||
}
|
||||
|
||||
// Never move original objects, clone them
|
||||
target[ name ] = jQuery.extend( deep, clone, copy );
|
||||
|
||||
// Don't bring in undefined values
|
||||
} else if ( copy !== undefined ) {
|
||||
target[ name ] = copy;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Return the modified object
|
||||
return target;
|
||||
};
|
||||
|
||||
jQuery.extend( {
|
||||
|
||||
// Unique for each copy of jQuery on the page
|
||||
expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
|
||||
|
||||
// Assume jQuery is ready without the ready module
|
||||
isReady: true,
|
||||
|
||||
error: function( msg ) {
|
||||
throw new Error( msg );
|
||||
},
|
||||
|
||||
noop: function() {},
|
||||
|
||||
isFunction: function( obj ) {
|
||||
return jQuery.type( obj ) === "function";
|
||||
},
|
||||
|
||||
isWindow: function( obj ) {
|
||||
return obj != null && obj === obj.window;
|
||||
},
|
||||
|
||||
isNumeric: function( obj ) {
|
||||
|
||||
// As of jQuery 3.0, isNumeric is limited to
|
||||
// strings and numbers (primitives or objects)
|
||||
// that can be coerced to finite numbers (gh-2662)
|
||||
var type = jQuery.type( obj );
|
||||
return ( type === "number" || type === "string" ) &&
|
||||
|
||||
// parseFloat NaNs numeric-cast false positives ("")
|
||||
// ...but misinterprets leading-number strings, particularly hex literals ("0x...")
|
||||
// subtraction forces infinities to NaN
|
||||
!isNaN( obj - parseFloat( obj ) );
|
||||
},
|
||||
|
||||
isPlainObject: function( obj ) {
|
||||
var proto, Ctor;
|
||||
|
||||
// Detect obvious negatives
|
||||
// Use toString instead of jQuery.type to catch host objects
|
||||
if ( !obj || toString.call( obj ) !== "[object Object]" ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
proto = getProto( obj );
|
||||
|
||||
// Objects with no prototype (e.g., `Object.create( null )`) are plain
|
||||
if ( !proto ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Objects with prototype are plain iff they were constructed by a global Object function
|
||||
Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
|
||||
return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
|
||||
},
|
||||
|
||||
isEmptyObject: function( obj ) {
|
||||
|
||||
/* eslint-disable no-unused-vars */
|
||||
// See https://github.com/eslint/eslint/issues/6125
|
||||
var name;
|
||||
|
||||
for ( name in obj ) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
type: function( obj ) {
|
||||
if ( obj == null ) {
|
||||
return obj + "";
|
||||
}
|
||||
|
||||
// Support: Android <=2.3 only (functionish RegExp)
|
||||
return typeof obj === "object" || typeof obj === "function" ?
|
||||
class2type[ toString.call( obj ) ] || "object" :
|
||||
typeof obj;
|
||||
},
|
||||
|
||||
// Evaluates a script in a global context
|
||||
globalEval: function( code ) {
|
||||
DOMEval( code );
|
||||
},
|
||||
|
||||
// Convert dashed to camelCase; used by the css and data modules
|
||||
// Support: IE <=9 - 11, Edge 12 - 13
|
||||
// Microsoft forgot to hump their vendor prefix (#9572)
|
||||
camelCase: function( string ) {
|
||||
return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
|
||||
},
|
||||
|
||||
each: function( obj, callback ) {
|
||||
var length, i = 0;
|
||||
|
||||
if ( isArrayLike( obj ) ) {
|
||||
length = obj.length;
|
||||
for ( ; i < length; i++ ) {
|
||||
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for ( i in obj ) {
|
||||
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return obj;
|
||||
},
|
||||
|
||||
// Support: Android <=4.0 only
|
||||
trim: function( text ) {
|
||||
return text == null ?
|
||||
"" :
|
||||
( text + "" ).replace( rtrim, "" );
|
||||
},
|
||||
|
||||
// results is for internal usage only
|
||||
makeArray: function( arr, results ) {
|
||||
var ret = results || [];
|
||||
|
||||
if ( arr != null ) {
|
||||
if ( isArrayLike( Object( arr ) ) ) {
|
||||
jQuery.merge( ret,
|
||||
typeof arr === "string" ?
|
||||
[ arr ] : arr
|
||||
);
|
||||
} else {
|
||||
push.call( ret, arr );
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
},
|
||||
|
||||
inArray: function( elem, arr, i ) {
|
||||
return arr == null ? -1 : indexOf.call( arr, elem, i );
|
||||
},
|
||||
|
||||
// Support: Android <=4.0 only, PhantomJS 1 only
|
||||
// push.apply(_, arraylike) throws on ancient WebKit
|
||||
merge: function( first, second ) {
|
||||
var len = +second.length,
|
||||
j = 0,
|
||||
i = first.length;
|
||||
|
||||
for ( ; j < len; j++ ) {
|
||||
first[ i++ ] = second[ j ];
|
||||
}
|
||||
|
||||
first.length = i;
|
||||
|
||||
return first;
|
||||
},
|
||||
|
||||
grep: function( elems, callback, invert ) {
|
||||
var callbackInverse,
|
||||
matches = [],
|
||||
i = 0,
|
||||
length = elems.length,
|
||||
callbackExpect = !invert;
|
||||
|
||||
// Go through the array, only saving the items
|
||||
// that pass the validator function
|
||||
for ( ; i < length; i++ ) {
|
||||
callbackInverse = !callback( elems[ i ], i );
|
||||
if ( callbackInverse !== callbackExpect ) {
|
||||
matches.push( elems[ i ] );
|
||||
}
|
||||
}
|
||||
|
||||
return matches;
|
||||
},
|
||||
|
||||
// arg is for internal usage only
|
||||
map: function( elems, callback, arg ) {
|
||||
var length, value,
|
||||
i = 0,
|
||||
ret = [];
|
||||
|
||||
// Go through the array, translating each of the items to their new values
|
||||
if ( isArrayLike( elems ) ) {
|
||||
length = elems.length;
|
||||
for ( ; i < length; i++ ) {
|
||||
value = callback( elems[ i ], i, arg );
|
||||
|
||||
if ( value != null ) {
|
||||
ret.push( value );
|
||||
}
|
||||
}
|
||||
|
||||
// Go through every key on the object,
|
||||
} else {
|
||||
for ( i in elems ) {
|
||||
value = callback( elems[ i ], i, arg );
|
||||
|
||||
if ( value != null ) {
|
||||
ret.push( value );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Flatten any nested arrays
|
||||
return concat.apply( [], ret );
|
||||
},
|
||||
|
||||
// A global GUID counter for objects
|
||||
guid: 1,
|
||||
|
||||
// Bind a function to a context, optionally partially applying any
|
||||
// arguments.
|
||||
proxy: function( fn, context ) {
|
||||
var tmp, args, proxy;
|
||||
|
||||
if ( typeof context === "string" ) {
|
||||
tmp = fn[ context ];
|
||||
context = fn;
|
||||
fn = tmp;
|
||||
}
|
||||
|
||||
// Quick check to determine if target is callable, in the spec
|
||||
// this throws a TypeError, but we will just return undefined.
|
||||
if ( !jQuery.isFunction( fn ) ) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
// Simulated bind
|
||||
args = slice.call( arguments, 2 );
|
||||
proxy = function() {
|
||||
return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
|
||||
};
|
||||
|
||||
// Set the guid of unique handler to the same of original handler, so it can be removed
|
||||
proxy.guid = fn.guid = fn.guid || jQuery.guid++;
|
||||
|
||||
return proxy;
|
||||
},
|
||||
|
||||
now: Date.now,
|
||||
|
||||
// jQuery.support is not used in Core but other projects attach their
|
||||
// properties to it so it needs to exist.
|
||||
support: support
|
||||
} );
|
||||
|
||||
if ( typeof Symbol === "function" ) {
|
||||
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
|
||||
}
|
||||
|
||||
// Populate the class2type map
|
||||
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
|
||||
function( i, name ) {
|
||||
class2type[ "[object " + name + "]" ] = name.toLowerCase();
|
||||
} );
|
||||
|
||||
function isArrayLike( obj ) {
|
||||
|
||||
// Support: real iOS 8.2 only (not reproducible in simulator)
|
||||
// `in` check used to prevent JIT error (gh-2145)
|
||||
// hasOwn isn't used here due to false negatives
|
||||
// regarding Nodelist length in IE
|
||||
var length = !!obj && "length" in obj && obj.length,
|
||||
type = jQuery.type( obj );
|
||||
|
||||
if ( type === "function" || jQuery.isWindow( obj ) ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return type === "array" || length === 0 ||
|
||||
typeof length === "number" && length > 0 && ( length - 1 ) in obj;
|
||||
}
|
||||
|
||||
return jQuery;
|
||||
} );
|
2528
js/popper.js
2528
js/popper.js
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
10638
js/theme.js
10638
js/theme.js
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -77,7 +77,7 @@ msgstr "Jetez un œil dans les archives mensuelles. %1$s"
|
|||
|
||||
#: author.php:34
|
||||
msgid "About:"
|
||||
msgstr "A propos:"
|
||||
msgstr "À propos:"
|
||||
|
||||
#: author.php:42 inc/custom-comments.php:30
|
||||
msgid "Website"
|
||||
|
@ -771,7 +771,7 @@ msgid ""
|
|||
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 "
|
||||
"WordPress. Utilisez-le comme thème de démarrage ou comme thème parent. À "
|
||||
"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 "
|
||||
|
@ -799,5 +799,5 @@ msgstr "http://www.holgerkoenemann.de"
|
|||
#~ "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 "
|
||||
#~ "point de départ pour tout vos projets de site et de thèmes WordPress. À "
|
||||
#~ "utiliser comme thème de départ ou comme thème parent."
|
||||
|
|
Binary file not shown.
|
@ -2,84 +2,34 @@ 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"
|
||||
"POT-Creation-Date: 2018-06-17 17:56+0000\n"
|
||||
"PO-Revision-Date: 2018-07-12 20:51+0000\n"
|
||||
"Last-Translator: vincent <v.vanbergen@gmail.com>\n"
|
||||
"Language-Team: Nederlands\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-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 “%2$s”"
|
||||
msgid_plural "%1$s thoughts on “%2$s”"
|
||||
msgstr[0] "Een reactie op “%2$s”"
|
||||
msgstr[1] "%1$s reacties op “%2$s”"
|
||||
|
||||
#: ../comments.php:35 ../comments.php:56 loco:58356fd352e1a1670d8b4569
|
||||
msgid "Comment navigation"
|
||||
msgstr "Reactienavigatie"
|
||||
|
||||
#: ../comments.php:37 ../comments.php:58 loco:58356fd352e1a1670d8b456a
|
||||
msgid "← Older Comments"
|
||||
msgstr "← Oudere reacties"
|
||||
|
||||
#: ../comments.php:40 ../comments.php:61 loco:58356fd352e1a1670d8b456b
|
||||
msgid "Newer Comments →"
|
||||
msgstr "Nieuwere reacties →"
|
||||
|
||||
#: ../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
|
||||
#: search.php:29
|
||||
#, php-format
|
||||
msgid "Search Results for: %s"
|
||||
msgstr "Zoekresultaten voor: %s"
|
||||
|
||||
#: ../404.php:22 loco:58356fd352e1a1670d8b4576
|
||||
#: header.php:34
|
||||
msgid "Skip to content"
|
||||
msgstr "Ga naar inhoud"
|
||||
|
||||
#: 404.php:24
|
||||
msgid "Oops! That page can’t be found."
|
||||
msgstr "Oeps! Deze pagina kan niet worden gevonden."
|
||||
|
||||
#: ../404.php:27 loco:58356fd352e1a1670d8b4577
|
||||
#: 404.php:31
|
||||
msgid ""
|
||||
"It looks like nothing was found at this location. Maybe try one of the links "
|
||||
"below or a search?"
|
||||
|
@ -87,147 +37,110 @@ msgstr ""
|
|||
"Het lijkt erop dat er niets gevonden is op deze locatie. Probeer anders "
|
||||
"één van de onderstaande links of een zoekopdracht? "
|
||||
|
||||
#: ../404.php:37 loco:58356fd352e1a1670d8b4578
|
||||
#: 404.php:42
|
||||
msgid "Most Used Categories"
|
||||
msgstr "Meestgebruikte categorieën"
|
||||
|
||||
#. translators: %1$s: smiley
|
||||
#: ../404.php:57 loco:58356fd352e1a1670d8b4579
|
||||
#: 404.php:62
|
||||
#, php-format
|
||||
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
|
||||
#: author.php:34
|
||||
msgid "About:"
|
||||
msgstr "Over:"
|
||||
|
||||
#: author.php:42 inc/custom-comments.php:30
|
||||
msgid "Website"
|
||||
msgstr "Website"
|
||||
|
||||
#: author.php:49
|
||||
msgid "Profile"
|
||||
msgstr "Profiel"
|
||||
|
||||
#: author.php:54
|
||||
msgid "Posts by"
|
||||
msgstr "Berichten van"
|
||||
|
||||
#: author.php:68
|
||||
msgid "in"
|
||||
msgstr "in"
|
||||
|
||||
#: comments.php:28
|
||||
#, php-format
|
||||
msgctxt "comments title"
|
||||
msgid "One thought on “%2$s”"
|
||||
msgid_plural "%1$s thoughts on “%2$s”"
|
||||
msgstr[0] "Een reactie op “%2$s”"
|
||||
msgstr[1] "%1$s reacties op “%2$s”"
|
||||
|
||||
#: comments.php:36 comments.php:59
|
||||
msgid "Comment navigation"
|
||||
msgstr "Reactienavigatie"
|
||||
|
||||
#: comments.php:38 comments.php:61
|
||||
msgid "← Older Comments"
|
||||
msgstr "← Oudere reacties"
|
||||
|
||||
#: comments.php:42 comments.php:65
|
||||
msgid "Newer Comments →"
|
||||
msgstr "Nieuwere reacties →"
|
||||
|
||||
#: comments.php:78
|
||||
msgid "Comments are closed."
|
||||
msgstr "Reacties zijn gesloten."
|
||||
|
||||
#: footer.php:27
|
||||
msgid "http://wordpress.org/"
|
||||
msgstr "http://wordpress.org/"
|
||||
|
||||
#: footer.php:28
|
||||
#, php-format
|
||||
msgid "Proudly powered by %s"
|
||||
msgstr "Met trots ondersteund door %s"
|
||||
|
||||
#: footer.php:31
|
||||
#, php-format
|
||||
msgid "Theme: %1$s by %2$s."
|
||||
msgstr "Thema: %1$s van %2$s."
|
||||
|
||||
#: footer.php:33
|
||||
#, php-format
|
||||
msgid "Version: %1$s"
|
||||
msgstr "Versie: %1$s"
|
||||
|
||||
#: searchform.php:10 searchform.php:16
|
||||
msgid "Search"
|
||||
msgstr "Zoek"
|
||||
|
||||
#: ../searchform.php:11 loco:58356fd352e1a1670d8b457b
|
||||
#: searchform.php:13
|
||||
msgid "Search …"
|
||||
msgstr "Zoek …"
|
||||
|
||||
#. 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
|
||||
#: 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 "Pagina's:"
|
||||
|
||||
#: ../loop-templates/content-none.php:16 loco:58356fd352e1a1670d8b4596
|
||||
#: loop-templates/content-page.php:34
|
||||
#: loop-templates/content-verticalpage.php:37
|
||||
msgid "Edit"
|
||||
msgstr "Bewerk"
|
||||
|
||||
#: loop-templates/content-none.php:15
|
||||
msgid "Nothing Found"
|
||||
msgstr "Niets gevonden"
|
||||
|
||||
#: ../loop-templates/content-none.php:24 loco:58356fd352e1a1670d8b4597
|
||||
#: loop-templates/content-none.php:23
|
||||
#, php-format
|
||||
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
|
||||
#: loop-templates/content-none.php:28
|
||||
msgid ""
|
||||
"Sorry, but nothing matched your search terms. Please try again with some "
|
||||
"different keywords."
|
||||
|
@ -235,7 +148,7 @@ msgstr ""
|
|||
"Helaas, er waren geen overeenkomsten met jouw zoekopdracht. Probeer het "
|
||||
"opnieuw met enkele andere zoekwoorden."
|
||||
|
||||
#: ../loop-templates/content-none.php:33 loco:58356fd352e1a1670d8b4599
|
||||
#: loop-templates/content-none.php:34
|
||||
msgid ""
|
||||
"It seems we can’t find what you’re looking for. Perhaps "
|
||||
"searching can help."
|
||||
|
@ -243,37 +156,610 @@ 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 template
|
||||
msgid "Blank Page Template"
|
||||
msgstr "Blank Pagina Sjabloon"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left and Right Sidebar Layout"
|
||||
msgstr "Linker en Rechter Zijbalk"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Empty Page Template"
|
||||
msgstr "Leeg Pagina Sjabloon"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Full Width Page"
|
||||
msgstr "Volledige breedte"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left Sidebar Layout"
|
||||
msgstr "Linker Zijbalk"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Vertical One Page"
|
||||
msgstr "Verticale Enkele Pagina"
|
||||
|
||||
#: inc/template-tags.php:18
|
||||
#, php-format
|
||||
msgid " Edited %4$s"
|
||||
msgstr " Bewerkt op %4$s"
|
||||
|
||||
#: inc/template-tags.php:29
|
||||
#, php-format
|
||||
msgctxt "post date"
|
||||
msgid "Posted on %s"
|
||||
msgstr "Geplaatst op %s"
|
||||
|
||||
#: inc/template-tags.php:34
|
||||
#, php-format
|
||||
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
|
||||
msgid ", "
|
||||
msgstr ", "
|
||||
|
||||
#: inc/template-tags.php:53
|
||||
#, php-format
|
||||
msgid "Posted in %1$s"
|
||||
msgstr "Geplaatst in %1$s"
|
||||
|
||||
#: inc/template-tags.php:59
|
||||
#, php-format
|
||||
msgid "Tagged %1$s"
|
||||
msgstr "%1$s getagd"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "Leave a comment"
|
||||
msgstr "Plaats een reactie"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "1 Comment"
|
||||
msgstr "1 Reactie"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "% Comments"
|
||||
msgstr "% Reacties"
|
||||
|
||||
#. translators: %s: Name of current post
|
||||
#: inc/template-tags.php:72
|
||||
#, php-format
|
||||
msgid "Edit %s"
|
||||
msgstr "Bewerk %s"
|
||||
|
||||
#: inc/template-tags.php:143
|
||||
msgid "Post navigation"
|
||||
msgstr "Bericht Navigatie"
|
||||
|
||||
#: inc/template-tags.php:148
|
||||
msgctxt "Previous post link"
|
||||
msgid "<i class=\"fa fa-angle-left\"></i> %title"
|
||||
msgstr ""
|
||||
|
||||
#: inc/template-tags.php:151
|
||||
msgctxt "Next post link"
|
||||
msgid "%title <i class=\"fa fa-angle-right\"></i>"
|
||||
msgstr ""
|
||||
|
||||
#: inc/setup.php:51
|
||||
msgid "Primary Menu"
|
||||
msgstr "Hoofdmenu"
|
||||
|
||||
#: inc/setup.php:122
|
||||
msgid "Read More..."
|
||||
msgstr "Lees verder..."
|
||||
|
||||
#: inc/widgets.php:14
|
||||
msgid "Right Sidebar"
|
||||
msgstr "Rechter zijbalk"
|
||||
|
||||
#: inc/widgets.php:24
|
||||
msgid "Left Sidebar"
|
||||
msgstr "Linkel zijbalk"
|
||||
|
||||
#: inc/widgets.php:34
|
||||
msgid "Hero Slider"
|
||||
msgstr "Hero Slider"
|
||||
|
||||
#: inc/widgets.php:44
|
||||
msgid "Hero Static"
|
||||
msgstr "Hero Static"
|
||||
|
||||
#: inc/widgets.php:54
|
||||
msgid "Footer Full"
|
||||
msgstr "Footer (volledige breedte)"
|
||||
|
||||
#: inc/custom-comments.php:24
|
||||
msgid "Name"
|
||||
msgstr "Naam"
|
||||
|
||||
#: inc/custom-comments.php:27
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: inc/custom-comments.php:49
|
||||
msgctxt "noun"
|
||||
msgid "Comment"
|
||||
msgstr "Reactie"
|
||||
|
||||
#: inc/customizer.php:36
|
||||
msgid "Slider Settings"
|
||||
msgstr "Sliderinstellingen"
|
||||
|
||||
#: inc/customizer.php:45
|
||||
msgid "Number of slides displaying at once"
|
||||
msgstr "Aantal gelijktijdig vertoonde slides"
|
||||
|
||||
#: inc/customizer.php:57
|
||||
msgid "Slider Time (in ms)"
|
||||
msgstr "Slidertijd (in ms)"
|
||||
|
||||
#: inc/customizer.php:69
|
||||
msgid "Loop Slider Content"
|
||||
msgstr "Sliderinhoud herhalen"
|
||||
|
||||
#: inc/customizer.php:81
|
||||
msgid "Theme Layout Settings"
|
||||
msgstr "Thema Layout Instellingen"
|
||||
|
||||
#: inc/customizer.php:83
|
||||
msgid "Container width and sidebar defaults"
|
||||
msgstr "Container breedte en zijbalk standaarden"
|
||||
|
||||
#: inc/customizer.php:98
|
||||
msgid "Container Width"
|
||||
msgstr "Container Breedte"
|
||||
|
||||
#: inc/customizer.php:99
|
||||
msgid "Choose between Bootstrap's container and container-fluid"
|
||||
msgstr "Kies tussen Bootstrap's container en container-fluid"
|
||||
|
||||
#: inc/customizer.php:104
|
||||
msgid "Fixed width container"
|
||||
msgstr "Container met vaste breedte"
|
||||
|
||||
#: inc/customizer.php:105
|
||||
msgid "Full width container"
|
||||
msgstr "Container met vollege breedte"
|
||||
|
||||
#: inc/customizer.php:122
|
||||
msgid "Sidebar Positioning"
|
||||
msgstr "Zijbalk Positie"
|
||||
|
||||
#: inc/customizer.php:123
|
||||
msgid "Set sidebar's position. Can either be: right, left, both or none"
|
||||
msgstr "Stel positie zijbalk in. Kan zijn: rechts, links, beiden of geen"
|
||||
|
||||
#: inc/customizer.php:129
|
||||
msgid "Right sidebar"
|
||||
msgstr "Rechter zijbalk"
|
||||
|
||||
#: inc/customizer.php:130
|
||||
msgid "Left sidebar"
|
||||
msgstr "Linker zijbalk"
|
||||
|
||||
#: inc/customizer.php:131
|
||||
msgid "Left & Right sidebars"
|
||||
msgstr "Linker & Rechter zijbalken"
|
||||
|
||||
#: inc/customizer.php:132
|
||||
msgid "No sidebar"
|
||||
msgstr "Geen zijbalk"
|
||||
|
||||
#: inc/customizer.php:150
|
||||
msgid "Posts Index Style"
|
||||
msgstr ""
|
||||
|
||||
#: inc/customizer.php:151
|
||||
msgid "Choose how to display latest posts"
|
||||
msgstr "Kies de weergave van laatste berichten"
|
||||
|
||||
#: inc/customizer.php:156
|
||||
msgid "Default"
|
||||
msgstr "Standaard"
|
||||
|
||||
#: inc/customizer.php:157
|
||||
msgid "Masonry"
|
||||
msgstr "Metselwerk"
|
||||
|
||||
#: inc/customizer.php:158
|
||||
msgid "Grid"
|
||||
msgstr "Rooster"
|
||||
|
||||
#: inc/customizer.php:187
|
||||
msgid "Grid Post Columns"
|
||||
msgstr "Rooster Bericht kolommen"
|
||||
|
||||
#: inc/customizer.php:188
|
||||
msgid "Choose how many columns to use"
|
||||
msgstr "Kies het aantal kolommen"
|
||||
|
||||
#: woocommerce/cart/proceed-to-checkout-button.php:27
|
||||
msgid "Proceed to Checkout"
|
||||
msgstr "Ga naar Uitchecken"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
|
||||
msgid "Remove this item"
|
||||
msgstr "Verwijder dit item"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:72
|
||||
msgid "No products in the cart."
|
||||
msgstr "Geen producten in de winkelwagen."
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:80
|
||||
msgid "Subtotal"
|
||||
msgstr "Subtotaal"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:85
|
||||
msgid "View Cart"
|
||||
msgstr "Bekijk Winkelwagen"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:86
|
||||
msgid "Checkout"
|
||||
msgstr "Uitchecken"
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:28
|
||||
msgid "Your cart is currently empty."
|
||||
msgstr "Uw winkelwagen is momenteel leeg"
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:36
|
||||
msgid "Return To Shop"
|
||||
msgstr "Terug Naar Winkel"
|
||||
|
||||
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
|
||||
#: woocommerce/checkout/form-pay.php:29
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
|
||||
msgid "Price"
|
||||
msgstr "Prijs"
|
||||
|
||||
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
|
||||
msgid "Quantity"
|
||||
msgstr "Aantal"
|
||||
|
||||
#: woocommerce/cart/cart.php:39 woocommerce/cart/cart.php:120
|
||||
#: woocommerce/myaccount/my-orders.php:16
|
||||
msgid "Total"
|
||||
msgstr "Totaal"
|
||||
|
||||
#: woocommerce/cart/cart.php:92
|
||||
msgid "Available on backorder"
|
||||
msgstr "beschikbaar op nalevering"
|
||||
|
||||
#: 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 "Pas Coupon toe"
|
||||
|
||||
#: woocommerce/cart/cart.php:144
|
||||
msgid "Update Cart"
|
||||
msgstr "Winkelwagen Bijwerken"
|
||||
|
||||
#: 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 ""
|
||||
"Sorry, het lijkt er op dat er geen betaalmethode voor uw staat is. Neem "
|
||||
"alstublieft contact met ons op als u assistentie nodig heeft of iets anders "
|
||||
"wilt regelen."
|
||||
|
||||
#: woocommerce/checkout/payment.php:35
|
||||
msgid "Please fill in your details above to see available payment methods."
|
||||
msgstr "Voer alstublief uw gegevens in om beschikbare betaalmethoden te zien."
|
||||
|
||||
#: 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 ""
|
||||
"Uw browser ondersteunt geen JavaScript ondersteunt, of het niet is "
|
||||
"ingeschakeld. Klik daarom alstublieft op de <em>Update Totals</em> knop "
|
||||
"voordat uw uw bestelling plaatst. Als u dat niet doet kan de situatie "
|
||||
"ontstaan dat het bedrag hoger uitvalt dan dat hierboven staat."
|
||||
|
||||
#: woocommerce/checkout/payment.php:43
|
||||
msgid "Update totals"
|
||||
msgstr "Totalen bijwerken"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:30
|
||||
msgid "Qty"
|
||||
msgstr "Aantal"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:31
|
||||
msgid "Totals"
|
||||
msgstr "Totalen"
|
||||
|
||||
#: 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 ""
|
||||
"Sorry, het lijkt er op dat er geen betaalmethode voor uw locatie is. Neem "
|
||||
"alstublieft contact met ons op als u assistentie nodig heeft of iets anders "
|
||||
"wilt regelen."
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Have a coupon?"
|
||||
msgstr "Heeft u een coupon?"
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Click here to enter your code"
|
||||
msgstr "Klik hier om uw code in te voeren"
|
||||
|
||||
#: woocommerce/global/form-login.php:35
|
||||
#: woocommerce/myaccount/form-lost-password.php:30
|
||||
msgid "Username or email"
|
||||
msgstr "Gebruikersnaam of email"
|
||||
|
||||
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
|
||||
#: woocommerce/myaccount/form-login.php:98
|
||||
msgid "Password"
|
||||
msgstr "Wachtwoord"
|
||||
|
||||
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
|
||||
#: woocommerce/myaccount/form-login.php:56
|
||||
msgid "Login"
|
||||
msgstr "Login"
|
||||
|
||||
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
|
||||
msgid "Remember me"
|
||||
msgstr "Onthoud mij"
|
||||
|
||||
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
|
||||
msgid "Lost your password?"
|
||||
msgstr "Uw wachtwoord vergeten?"
|
||||
|
||||
#: woocommerce/global/quantity-input.php:24
|
||||
msgctxt "Product quantity input tooltip"
|
||||
msgid "Qty"
|
||||
msgstr "Aantal"
|
||||
|
||||
#: 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 ""
|
||||
"Uw wachtwoord vergeten? Voer altublieft uw gebruikersnaam of email adres in. "
|
||||
"U krijgt een een link via email om een nieuw wachtwoord aan te maken."
|
||||
|
||||
#: woocommerce/myaccount/form-lost-password.php:40
|
||||
msgid "Reset Password"
|
||||
msgstr "Reset Wachtwoord"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:44
|
||||
msgid "Username or email address"
|
||||
msgstr "Gebruikersnaam of email adres"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:75
|
||||
#: woocommerce/myaccount/form-login.php:112
|
||||
msgid "Register"
|
||||
msgstr "Registreren"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:84
|
||||
msgid "Username"
|
||||
msgstr "Gebruikersnaam"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:91
|
||||
#: woocommerce/myaccount/form-edit-account.php:40
|
||||
msgid "Email address"
|
||||
msgstr "Email adres"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:105
|
||||
msgid "Anti-spam"
|
||||
msgstr "Anti-spam"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:30
|
||||
msgid "First name"
|
||||
msgstr "Voornaam"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:34
|
||||
msgid "Last name"
|
||||
msgstr "Achternaam"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:45
|
||||
msgid "Password Change"
|
||||
msgstr "Wachtwoord Verandering"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:48
|
||||
msgid "Current Password (leave blank to leave unchanged)"
|
||||
msgstr "Huidige Wachtwoord (laat leeg om onveranderd te laten)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:52
|
||||
msgid "New Password (leave blank to leave unchanged)"
|
||||
msgstr "Nieuw Wachtwoord (laat leeg om ongewijzigd te laten)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:56
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Bevestig Nieuw Wachtwoord"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:66
|
||||
msgid "Save changes"
|
||||
msgstr "Bewaar veranderingen"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:13
|
||||
msgid "Order"
|
||||
msgstr "Bestellling"
|
||||
|
||||
#: 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 "Recente bestellingen"
|
||||
|
||||
#: 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 voor %s item"
|
||||
msgstr[1] "%s for %s items"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
|
||||
msgid "Pay"
|
||||
msgstr "Betalen"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
|
||||
msgid "View"
|
||||
msgstr "Bekijk"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
|
||||
msgid "Cancel"
|
||||
msgstr "Annuleer"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:107
|
||||
msgid "Previous"
|
||||
msgstr "Vorige"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:111
|
||||
msgid "Next"
|
||||
msgstr "Volgende"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
|
||||
msgid "Go Shop"
|
||||
msgstr "Ga winkelen"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:121
|
||||
msgid "No order has been made yet."
|
||||
msgstr "Er is nog geen bestelling aangemaakt."
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Billing Address"
|
||||
msgstr "Factuur adres"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Shipping Address"
|
||||
msgstr "Verzendingsadres"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:46
|
||||
msgid "Save Address"
|
||||
msgstr "Bewaard Adres"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:27
|
||||
msgid "Enter a new password below."
|
||||
msgstr "Voer onder uw nieuwe wachtwoord in."
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:30
|
||||
msgid "New password"
|
||||
msgstr "Nieuw wachtwoord"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:34
|
||||
msgid "Re-enter new password"
|
||||
msgstr "Voer wachtwoord opnieuw in"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:47
|
||||
msgid "Save"
|
||||
msgstr "Opslaan"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:59
|
||||
msgid "∞"
|
||||
msgstr "∞"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:67
|
||||
msgid "Never"
|
||||
msgstr "Nooit"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:75
|
||||
msgid "Download"
|
||||
msgstr "Download"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:100
|
||||
msgid "No downloads available yet."
|
||||
msgstr "Nog geen downloads beschikbaar"
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:28
|
||||
#, php-format
|
||||
msgid "Rated %d out of 5"
|
||||
msgstr "Beoordeeld met %d van de 5"
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:29
|
||||
msgid "out of 5"
|
||||
msgstr "van de 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:36
|
||||
#, php-format
|
||||
msgid "Rated %s out of 5"
|
||||
msgstr "Beoordeeld met %s van de 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:38
|
||||
#, php-format
|
||||
msgid "out of %s5%s"
|
||||
msgstr "van de %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] "gebaseerd op %s klant beoordeling"
|
||||
msgstr[1] "gebaseerd op %s klant beoordelingen"
|
||||
|
||||
#: woocommerce/single-product/rating.php:42
|
||||
#, php-format
|
||||
msgid "%s customer review"
|
||||
msgid_plural "%s customer reviews"
|
||||
msgstr[0] "%s klant beoordeling"
|
||||
msgstr[1] "%s klant beoordelingen"
|
||||
|
||||
#. 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."
|
||||
"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 ""
|
||||
"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."
|
||||
|
||||
#. Theme URI of the theme
|
||||
msgid "http://understrap.com"
|
||||
msgstr "http://understrap.com"
|
||||
|
||||
#. 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"
|
||||
|
||||
msgid "Proceed to checkout"
|
||||
msgstr "Ga naar uitchecken"
|
||||
|
||||
msgid "Apply coupon"
|
||||
msgstr "Pas coupon toe"
|
||||
|
||||
msgid "Update cart"
|
||||
msgstr "Update winkelwagen"
|
||||
|
||||
msgid "Your order"
|
||||
msgstr "Uw bestelling"
|
||||
|
|
Binary file not shown.
|
@ -3,24 +3,24 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: understrap\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
|
||||
"POT-Creation-Date: 2016-10-27 11:09+0100\n"
|
||||
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
|
||||
"PO-Revision-Date: 2016-10-27 12:01+0100\n"
|
||||
"POT-Creation-Date: 2018-06-17 17:56+0000\n"
|
||||
"PO-Revision-Date: 2019-02-05 12:35+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Language: pt_PT\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-Generator: Poedit 2.2.1\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: pt_PT\n"
|
||||
"X-Poedit-SearchPath-0: footer.php\n"
|
||||
"X-Poedit-SearchPath-1: header.php\n"
|
||||
"X-Poedit-SearchPath-2: index.php\n"
|
||||
|
@ -44,7 +44,58 @@ msgstr ""
|
|||
"X-Poedit-SearchPath-20: page-templates\n"
|
||||
"X-Poedit-SearchPath-21: inc\n"
|
||||
|
||||
#: ../comments.php:28
|
||||
#: search.php:29
|
||||
#, php-format
|
||||
msgid "Search Results for: %s"
|
||||
msgstr "Procurar resultados para: %s"
|
||||
|
||||
#: header.php:34
|
||||
msgid "Skip to content"
|
||||
msgstr "Saltar para o conteúdo"
|
||||
|
||||
#: 404.php:24
|
||||
msgid "Oops! That page can’t be found."
|
||||
msgstr "Ops! Essa página não foi encontrada."
|
||||
|
||||
#: 404.php:31
|
||||
msgid ""
|
||||
"It looks like nothing was found at this location. Maybe try one of the links "
|
||||
"below or a search?"
|
||||
msgstr ""
|
||||
"Parece que nada foi encontrado neste local. Talvez tente um dos links abaixo "
|
||||
"ou uma pesquisa?"
|
||||
|
||||
#: 404.php:42
|
||||
msgid "Most Used Categories"
|
||||
msgstr "Categorias mais utilizadas"
|
||||
|
||||
#. translators: %1$s: smiley
|
||||
#: 404.php:62
|
||||
#, php-format
|
||||
msgid "Try looking in the monthly archives. %1$s"
|
||||
msgstr "Tente procurar nos arquivos mensais. %1$s"
|
||||
|
||||
#: author.php:34
|
||||
msgid "About:"
|
||||
msgstr "Sobre:"
|
||||
|
||||
#: author.php:42 inc/custom-comments.php:30
|
||||
msgid "Website"
|
||||
msgstr "Website"
|
||||
|
||||
#: author.php:49
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: author.php:54
|
||||
msgid "Posts by"
|
||||
msgstr "Post por"
|
||||
|
||||
#: author.php:68
|
||||
msgid "in"
|
||||
msgstr "em"
|
||||
|
||||
#: comments.php:28
|
||||
#, php-format
|
||||
msgctxt "comments title"
|
||||
msgid "One thought on “%2$s”"
|
||||
|
@ -52,220 +103,72 @@ msgid_plural "%1$s thoughts on “%2$s”"
|
|||
msgstr[0] "Uma ideia sobre “%2$s”"
|
||||
msgstr[1] "%1$s ideias sobre “%2$s”"
|
||||
|
||||
#: ../comments.php:35 ../comments.php:56
|
||||
#: comments.php:36 comments.php:59
|
||||
msgid "Comment navigation"
|
||||
msgstr "Navegação Respostas"
|
||||
|
||||
#: ../comments.php:37 ../comments.php:58
|
||||
#: comments.php:38 comments.php:61
|
||||
msgid "← Older Comments"
|
||||
msgstr "← Comentários mais antigos"
|
||||
|
||||
#: ../comments.php:40 ../comments.php:61
|
||||
#: comments.php:42 comments.php:65
|
||||
msgid "Newer Comments →"
|
||||
msgstr "Comentários mais recentes →"
|
||||
|
||||
#: ../comments.php:72
|
||||
#: comments.php:78
|
||||
msgid "Comments are closed."
|
||||
msgstr "Comentários estão fechados."
|
||||
|
||||
#: ../author.php:27
|
||||
msgid "About:"
|
||||
msgstr "Sobre:"
|
||||
|
||||
#: ../author.php:32 ../inc/custom-comments.php:16
|
||||
msgid "Website"
|
||||
msgstr "Website"
|
||||
|
||||
#: ../author.php:34
|
||||
msgid "Profile"
|
||||
msgstr "Perfil"
|
||||
|
||||
#: ../author.php:38
|
||||
msgid "Posts by"
|
||||
msgstr "Post por"
|
||||
|
||||
#: ../footer.php:24
|
||||
#: footer.php:27
|
||||
msgid "http://wordpress.org/"
|
||||
msgstr "http://wordpress.org/"
|
||||
|
||||
#: ../footer.php:24
|
||||
#: footer.php:28
|
||||
#, php-format
|
||||
msgid "Proudly powered by %s"
|
||||
msgstr "Orgulhosamente criado com %s"
|
||||
|
||||
#: ../footer.php:26
|
||||
#: footer.php:31
|
||||
#, php-format
|
||||
msgid "Theme: %1$s by %2$s."
|
||||
msgstr "Tema: %1$s por %2$s."
|
||||
|
||||
#: ../header.php:30
|
||||
msgid "Skip to content"
|
||||
msgstr "Saltar para o conteúdo"
|
||||
|
||||
#: ../search.php:23
|
||||
#: footer.php:33
|
||||
#, php-format
|
||||
msgid "Search Results for: %s"
|
||||
msgstr "Procurar resultados para: %s"
|
||||
msgid "Version: %1$s"
|
||||
msgstr "Versão: %1$s"
|
||||
|
||||
#: ../404.php:22
|
||||
msgid "Oops! That page can’t be found."
|
||||
msgstr "Ops! Essa página não foi encontrada."
|
||||
|
||||
#: ../404.php:27
|
||||
msgid ""
|
||||
"It looks like nothing was found at this location. Maybe try one of the links "
|
||||
"below or a search?"
|
||||
msgstr ""
|
||||
"Parece que nada foi encontrado neste local. Talvez tente um dos links abaixo "
|
||||
"ou uma pesquisa!"
|
||||
|
||||
#: ../404.php:37
|
||||
msgid "Most Used Categories"
|
||||
msgstr "Categorias mais utilizadas"
|
||||
|
||||
#. translators: %1$s: smiley
|
||||
#: ../404.php:57
|
||||
#, php-format
|
||||
msgid "Try looking in the monthly archives. %1$s"
|
||||
msgstr "Tente procurar nos arquivos mensais. %1$s"
|
||||
|
||||
#: ../searchform.php:9 ../searchform.php:13
|
||||
#: searchform.php:10 searchform.php:16
|
||||
msgid "Search"
|
||||
msgstr "Pesquisar"
|
||||
|
||||
#: ../searchform.php:11
|
||||
#: searchform.php:13
|
||||
msgid "Search …"
|
||||
msgstr "Pesquisar …"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Full Width Page"
|
||||
msgstr "Página largura completa"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Empty Page Template"
|
||||
msgstr "Template página vazia"
|
||||
|
||||
#: ../inc/widgets.php:10
|
||||
msgid "Sidebar"
|
||||
msgstr "Barra 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 "Rodapé completo"
|
||||
|
||||
#: ../inc/customizer.php:24
|
||||
msgid "Slider Settings"
|
||||
msgstr "Definições do Slider"
|
||||
|
||||
#: ../inc/customizer.php:33
|
||||
msgid "Number of slides displaying at once"
|
||||
msgstr "Número de slides mostrados de cada vez"
|
||||
|
||||
#: ../inc/customizer.php:45
|
||||
msgid "Slider Time (in ms)"
|
||||
msgstr "Tempo (ms) por slide"
|
||||
|
||||
#: ../inc/customizer.php:57
|
||||
msgid "Loop Slider Content"
|
||||
msgstr "Iterar conteúdo do Slider"
|
||||
|
||||
#: ../inc/template-tags.php:18
|
||||
#, php-format
|
||||
msgid " Edited %4$s"
|
||||
msgstr " Editado %4$s"
|
||||
|
||||
#: ../inc/template-tags.php:29
|
||||
#, php-format
|
||||
msgctxt "post date"
|
||||
msgid "Posted on %s"
|
||||
msgstr "Colocado em %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 "Colocado em %1$s"
|
||||
|
||||
#: ../inc/template-tags.php:59
|
||||
#, php-format
|
||||
msgid "Tagged %1$s"
|
||||
msgstr "Etiquetas %1$s"
|
||||
|
||||
#: ../inc/template-tags.php:65
|
||||
msgid "Leave a comment"
|
||||
msgstr "Comentar"
|
||||
|
||||
#: ../inc/template-tags.php:65
|
||||
msgid "1 Comment"
|
||||
msgstr "1 Comentário"
|
||||
|
||||
#: ../inc/template-tags.php:65
|
||||
#, php-format
|
||||
msgid "% Comments"
|
||||
msgstr "% Comentários"
|
||||
|
||||
#. translators: %s: Name of current post
|
||||
#: ../inc/template-tags.php:72
|
||||
#, php-format
|
||||
msgid "Edit %s"
|
||||
msgstr "Editar %s"
|
||||
|
||||
#: ../inc/setup.php:48
|
||||
msgid "Primary Menu"
|
||||
msgstr "Menu principal"
|
||||
|
||||
#: ../inc/setup.php:98
|
||||
msgid "Read More..."
|
||||
msgstr "Continuar a ler..."
|
||||
|
||||
#: ../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 "Comentário"
|
||||
|
||||
#: ../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 "Páginas:"
|
||||
|
||||
#: ../loop-templates/content-none.php:16
|
||||
#: loop-templates/content-page.php:34
|
||||
#: loop-templates/content-verticalpage.php:37
|
||||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
|
||||
#: loop-templates/content-none.php:15
|
||||
msgid "Nothing Found"
|
||||
msgstr "Nada encontrado"
|
||||
|
||||
#: ../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>."
|
||||
msgstr ""
|
||||
"Pronto para publicar o primeiro post? <a href=\"%1$s\">Começar aqui</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."
|
||||
|
@ -273,34 +176,607 @@ msgstr ""
|
|||
"Lamentamos, nada corresponde aos termos de pesquisa. Por favor, tentar "
|
||||
"novamente com algumas palavras-chave diferentes."
|
||||
|
||||
#: ../loop-templates/content-none.php:33
|
||||
#: loop-templates/content-none.php:34
|
||||
msgid ""
|
||||
"It seems we can’t find what you’re looking for. Perhaps "
|
||||
"searching can help."
|
||||
msgstr ""
|
||||
"Parece que não conseguimos encontrar o que procura. Talvez pesquisar ajude."
|
||||
|
||||
#: ../loop-templates/content-page.php:34
|
||||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
#. Name of the template
|
||||
msgid "Blank Page Template"
|
||||
msgstr "Template Página Vazia"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left and Right Sidebar Layout"
|
||||
msgstr "Layout com Barra Lateral à Esquerda"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Empty Page Template"
|
||||
msgstr "Template página vazia"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Full Width Page"
|
||||
msgstr "Página largura completa"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left Sidebar Layout"
|
||||
msgstr "Layout com Barra Lateral à Esquerda"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Vertical One Page"
|
||||
msgstr "Uma Página Vertical"
|
||||
|
||||
#: inc/template-tags.php:18
|
||||
#, php-format
|
||||
msgid " Edited %4$s"
|
||||
msgstr " Editado %4$s"
|
||||
|
||||
#: inc/template-tags.php:29
|
||||
#, php-format
|
||||
msgctxt "post date"
|
||||
msgid "Posted on %s"
|
||||
msgstr "Colocado em %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 "Colocado em %1$s"
|
||||
|
||||
#: inc/template-tags.php:59
|
||||
#, php-format
|
||||
msgid "Tagged %1$s"
|
||||
msgstr "Etiquetas %1$s"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "Leave a comment"
|
||||
msgstr "Comentar"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "1 Comment"
|
||||
msgstr "1 Comentário"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "% Comments"
|
||||
msgstr "% Comentários"
|
||||
|
||||
#. translators: %s: Name of current post
|
||||
#: inc/template-tags.php:72
|
||||
#, php-format
|
||||
msgid "Edit %s"
|
||||
msgstr "Editar %s"
|
||||
|
||||
#: inc/template-tags.php:143
|
||||
msgid "Post navigation"
|
||||
msgstr "Navegação nos Posts"
|
||||
|
||||
#: inc/template-tags.php:148
|
||||
msgctxt "Previous post link"
|
||||
msgid "<i class=\"fa fa-angle-left\"></i> %title"
|
||||
msgstr "<i class=\"fa fa-angle-left\"></i> %title"
|
||||
|
||||
#: inc/template-tags.php:151
|
||||
msgctxt "Next post link"
|
||||
msgid "%title <i class=\"fa fa-angle-right\"></i>"
|
||||
msgstr "%title <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 "Continuar a ler..."
|
||||
|
||||
#: inc/widgets.php:14
|
||||
msgid "Right Sidebar"
|
||||
msgstr "Barra Lateral Direita"
|
||||
|
||||
#: inc/widgets.php:24
|
||||
msgid "Left Sidebar"
|
||||
msgstr "Barra Lateral Esquerda"
|
||||
|
||||
#: inc/widgets.php:34
|
||||
msgid "Hero Slider"
|
||||
msgstr "Hero Slider"
|
||||
|
||||
#: inc/widgets.php:44
|
||||
msgid "Hero Static"
|
||||
msgstr "Hero Static"
|
||||
|
||||
#: inc/widgets.php:54
|
||||
msgid "Footer Full"
|
||||
msgstr "Rodapé completo"
|
||||
|
||||
#: inc/custom-comments.php:24
|
||||
msgid "Name"
|
||||
msgstr "Nome"
|
||||
|
||||
#: inc/custom-comments.php:27
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: inc/custom-comments.php:49
|
||||
msgctxt "noun"
|
||||
msgid "Comment"
|
||||
msgstr "Comentário"
|
||||
|
||||
#: inc/customizer.php:36
|
||||
msgid "Slider Settings"
|
||||
msgstr "Definições do Slider"
|
||||
|
||||
#: inc/customizer.php:45
|
||||
msgid "Number of slides displaying at once"
|
||||
msgstr "Número de slides mostrados de cada vez"
|
||||
|
||||
#: inc/customizer.php:57
|
||||
msgid "Slider Time (in ms)"
|
||||
msgstr "Tempo (ms) por slide"
|
||||
|
||||
#: inc/customizer.php:69
|
||||
msgid "Loop Slider Content"
|
||||
msgstr "Iterar conteúdo do Slider"
|
||||
|
||||
#: inc/customizer.php:81
|
||||
msgid "Theme Layout Settings"
|
||||
msgstr "Definições do Layout do tema"
|
||||
|
||||
#: inc/customizer.php:83
|
||||
msgid "Container width and sidebar defaults"
|
||||
msgstr "Contentor com Barras Laterais por defeito"
|
||||
|
||||
#: inc/customizer.php:98
|
||||
msgid "Container Width"
|
||||
msgstr "Largura do contentor"
|
||||
|
||||
#: inc/customizer.php:99
|
||||
msgid "Choose between Bootstrap's container and container-fluid"
|
||||
msgstr "Escolha entre Contentor do Bootstrap ou Contentor fluído"
|
||||
|
||||
#: inc/customizer.php:104
|
||||
msgid "Fixed width container"
|
||||
msgstr "Contentor com largura fixa"
|
||||
|
||||
#: inc/customizer.php:105
|
||||
msgid "Full width container"
|
||||
msgstr "Contentor com largura completa"
|
||||
|
||||
#: inc/customizer.php:122
|
||||
msgid "Sidebar Positioning"
|
||||
msgstr "Colocação da Barra Lateral"
|
||||
|
||||
#: inc/customizer.php:123
|
||||
msgid "Set sidebar's position. Can either be: right, left, both or none"
|
||||
msgstr ""
|
||||
"Posições das Barras Laterais pode ser, esquerda, direita, ambas ou nenhuma"
|
||||
|
||||
#: inc/customizer.php:129
|
||||
msgid "Right sidebar"
|
||||
msgstr "Barra Lateral Direita"
|
||||
|
||||
#: inc/customizer.php:130
|
||||
msgid "Left sidebar"
|
||||
msgstr "Barra Lateral Esquerda"
|
||||
|
||||
#: inc/customizer.php:131
|
||||
msgid "Left & Right sidebars"
|
||||
msgstr "Barras Laterais Esquerda e Direita"
|
||||
|
||||
#: inc/customizer.php:132
|
||||
msgid "No sidebar"
|
||||
msgstr "Sem Barra Lateral"
|
||||
|
||||
#: inc/customizer.php:150
|
||||
msgid "Posts Index Style"
|
||||
msgstr "Estilo do Índex de Posts"
|
||||
|
||||
#: inc/customizer.php:151
|
||||
msgid "Choose how to display latest posts"
|
||||
msgstr "Escolher como mostrar os últimos posts"
|
||||
|
||||
#: inc/customizer.php:156
|
||||
msgid "Default"
|
||||
msgstr "Pré-definição"
|
||||
|
||||
#: inc/customizer.php:157
|
||||
msgid "Masonry"
|
||||
msgstr "Mosaico"
|
||||
|
||||
#: inc/customizer.php:158
|
||||
msgid "Grid"
|
||||
msgstr "Grelha"
|
||||
|
||||
#: inc/customizer.php:187
|
||||
msgid "Grid Post Columns"
|
||||
msgstr "Grelha"
|
||||
|
||||
#: inc/customizer.php:188
|
||||
msgid "Choose how many columns to use"
|
||||
msgstr "Escolher quantas colunas usar"
|
||||
|
||||
#: woocommerce/cart/proceed-to-checkout-button.php:27
|
||||
msgid "Proceed to Checkout"
|
||||
msgstr "Prosseguir com a compra"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
|
||||
msgid "Remove this item"
|
||||
msgstr "Remover este item"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:72
|
||||
msgid "No products in the cart."
|
||||
msgstr "Sem produtos no carrilho."
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:80
|
||||
msgid "Subtotal"
|
||||
msgstr "Subtotal"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:85
|
||||
msgid "View Cart"
|
||||
msgstr "Ver carrinho"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:86
|
||||
msgid "Checkout"
|
||||
msgstr "Comprar"
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:28
|
||||
msgid "Your cart is currently empty."
|
||||
msgstr "O seu carrinho está vazio neste momento."
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:36
|
||||
msgid "Return To Shop"
|
||||
msgstr "Voltar às compras"
|
||||
|
||||
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
|
||||
#: woocommerce/checkout/form-pay.php:29
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
|
||||
msgid "Price"
|
||||
msgstr "Preço"
|
||||
|
||||
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
#: 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 "Disponível sob reserva"
|
||||
|
||||
#: woocommerce/cart/cart.php:138
|
||||
msgid "Coupon:"
|
||||
msgstr "Cupão:"
|
||||
|
||||
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:36
|
||||
msgid "Coupon code"
|
||||
msgstr "Código do cupão"
|
||||
|
||||
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:40
|
||||
msgid "Apply Coupon"
|
||||
msgstr "Aplicar cupão"
|
||||
|
||||
#: woocommerce/cart/cart.php:144
|
||||
msgid "Update Cart"
|
||||
msgstr "Actualizar carrilho"
|
||||
|
||||
#: 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 ""
|
||||
"Lamentamos, não há métodos de pagamento disponíveis para a sua localização. "
|
||||
"Por favor contacte-nos se desejar combinar alternativas."
|
||||
|
||||
#: woocommerce/checkout/payment.php:35
|
||||
msgid "Please fill in your details above to see available payment methods."
|
||||
msgstr ""
|
||||
"Por favor preencha os seus dados para ver métodos de pagamento disponíveis."
|
||||
|
||||
#: 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 ""
|
||||
"Dado que o seu navegador de Internet não suporta Javascript, ou o tem "
|
||||
"desligado, por favor carregue no botão <em>Actualizar Totais</em> antes de "
|
||||
"colocar a sua encomenda. Não o fazer pode ocasionar erros."
|
||||
|
||||
#: woocommerce/checkout/payment.php:43
|
||||
msgid "Update totals"
|
||||
msgstr "Actualizar Totais"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:30
|
||||
msgid "Qty"
|
||||
msgstr "Qtd"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:31
|
||||
msgid "Totals"
|
||||
msgstr "Totais"
|
||||
|
||||
#: 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 ""
|
||||
"Lamentamos, não há métodos de pagamento disponíveis para a sua localização. "
|
||||
"Por favor contacte-nos se desejar combinar alternativas."
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Have a coupon?"
|
||||
msgstr "Tem um cupão?"
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Click here to enter your code"
|
||||
msgstr "Carregue aqui para introduzir o seu código"
|
||||
|
||||
#: woocommerce/global/form-login.php:35
|
||||
#: woocommerce/myaccount/form-lost-password.php:30
|
||||
msgid "Username or email"
|
||||
msgstr "Nome de utilizador ou endereço de email"
|
||||
|
||||
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
|
||||
#: woocommerce/myaccount/form-login.php:98
|
||||
msgid "Password"
|
||||
msgstr "Palavra passe"
|
||||
|
||||
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
|
||||
#: woocommerce/myaccount/form-login.php:56
|
||||
msgid "Login"
|
||||
msgstr "Entrar"
|
||||
|
||||
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
|
||||
msgid "Remember me"
|
||||
msgstr "Manter login"
|
||||
|
||||
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
|
||||
msgid "Lost your password?"
|
||||
msgstr "Perdeu a palavra passe?"
|
||||
|
||||
#: woocommerce/global/quantity-input.php:24
|
||||
msgctxt "Product quantity input tooltip"
|
||||
msgid "Qty"
|
||||
msgstr "Qtd"
|
||||
|
||||
#: 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 ""
|
||||
"Perdeu a palavra passe? Por favor preencha o seu endereço de email. Receberá "
|
||||
"um link para criar uma nova palavra passe."
|
||||
|
||||
#: woocommerce/myaccount/form-lost-password.php:40
|
||||
msgid "Reset Password"
|
||||
msgstr "Enviar link"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:44
|
||||
msgid "Username or email address"
|
||||
msgstr "Nome de utilizador ou endereço de email"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:75
|
||||
#: woocommerce/myaccount/form-login.php:112
|
||||
msgid "Register"
|
||||
msgstr "Registrar"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:84
|
||||
msgid "Username"
|
||||
msgstr "Nome de utilizador"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:91
|
||||
#: woocommerce/myaccount/form-edit-account.php:40
|
||||
msgid "Email address"
|
||||
msgstr "Endereço de email"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:105
|
||||
msgid "Anti-spam"
|
||||
msgstr "Anti-spam"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:30
|
||||
msgid "First name"
|
||||
msgstr "Primeiro nome"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:34
|
||||
msgid "Last name"
|
||||
msgstr "Ultimo nome"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:45
|
||||
msgid "Password Change"
|
||||
msgstr "Alterar palavra passe"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:48
|
||||
msgid "Current Password (leave blank to leave unchanged)"
|
||||
msgstr "Palavra passe actual (deixar em branco para não alterar)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:52
|
||||
msgid "New Password (leave blank to leave unchanged)"
|
||||
msgstr "Nova Palavra passe (deixar em branco para não alterar)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:56
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Reintroduzir nova palavra passe"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:66
|
||||
msgid "Save changes"
|
||||
msgstr "Gravar"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:13
|
||||
msgid "Order"
|
||||
msgstr "Encomenda"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:14
|
||||
msgid "Date"
|
||||
msgstr "Data"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:15
|
||||
msgid "Status"
|
||||
msgstr "Estado"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:30
|
||||
msgid "Recent Orders"
|
||||
msgstr "Encomendas recentes"
|
||||
|
||||
#: 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 por %s item"
|
||||
msgstr[1] "%s por %s items"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
|
||||
msgid "Pay"
|
||||
msgstr "Pagar"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
|
||||
msgid "View"
|
||||
msgstr "Ver"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:107
|
||||
msgid "Previous"
|
||||
msgstr "Anterior"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:111
|
||||
msgid "Next"
|
||||
msgstr "Próximo"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
|
||||
msgid "Go Shop"
|
||||
msgstr "Ir comprar"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:121
|
||||
msgid "No order has been made yet."
|
||||
msgstr "Sem encomendas."
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Billing Address"
|
||||
msgstr "Endereço de faturação"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Shipping Address"
|
||||
msgstr "Endereço de expedição"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:46
|
||||
msgid "Save Address"
|
||||
msgstr "Gravar endereço"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:27
|
||||
msgid "Enter a new password below."
|
||||
msgstr "Introduzir nova palavra passe abaixo."
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:30
|
||||
msgid "New password"
|
||||
msgstr "Nova palavra passe"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:34
|
||||
msgid "Re-enter new password"
|
||||
msgstr "Reintroduzir nova palavra passe"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:47
|
||||
msgid "Save"
|
||||
msgstr "Gravar"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:59
|
||||
msgid "∞"
|
||||
msgstr "∞"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:67
|
||||
msgid "Never"
|
||||
msgstr "Nunca"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:75
|
||||
msgid "Download"
|
||||
msgstr "Descarregar"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:100
|
||||
msgid "No downloads available yet."
|
||||
msgstr "Ainda não há downloads disponíveis."
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:28
|
||||
#, php-format
|
||||
msgid "Rated %d out of 5"
|
||||
msgstr "Classificado %d de 5"
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:29
|
||||
msgid "out of 5"
|
||||
msgstr "de 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:36
|
||||
#, php-format
|
||||
msgid "Rated %s out of 5"
|
||||
msgstr "Classificado %s de 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:38
|
||||
#, php-format
|
||||
msgid "out of %s5%s"
|
||||
msgstr "de %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] "baseado em %s classificação de cliente"
|
||||
msgstr[1] "baseado em %s classificaçõs de clientes"
|
||||
|
||||
#: woocommerce/single-product/rating.php:42
|
||||
#, php-format
|
||||
msgid "%s customer review"
|
||||
msgid_plural "%s customer reviews"
|
||||
msgstr[0] "%s comentário de um cliente"
|
||||
msgstr[1] "%s comentários de clientes"
|
||||
|
||||
#. 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 ""
|
||||
"Combinação do tema _s da Automattic com Bootstrap 4. Feito como um sólido "
|
||||
"ponto de partida para o tema do seu próximo website WordPress. Usar como "
|
||||
"tema de arranque ou como tema base, cabe a si definir."
|
||||
"Combinação do tema _s da Automattic e Bootstrap 4. Pensado como um ponto de "
|
||||
"arranque sólido para o teu próximo projecto e website WordPress. Utiliza "
|
||||
"como um starter theme ou parent theme. Inclui suporte para Font Awesome, "
|
||||
"slider de widgets e muito mais. IMPORTANTE as dependências de "
|
||||
"desenvolvimento não estão incluídas com o ficheiro de instalação. é "
|
||||
"necessário executar \"npm install\" e \"gulp copy-assets\" dentro da "
|
||||
"directoria /understrap."
|
||||
|
||||
#. Theme URI of the theme
|
||||
msgid "http://understrap.com"
|
||||
msgstr "http://understrap.com"
|
||||
|
||||
#. Author of the theme
|
||||
msgid "Holger Koenemann"
|
||||
|
@ -309,3 +785,24 @@ msgstr "Holger Koenemann"
|
|||
#. Author URI of the theme
|
||||
msgid "http://www.holgerkoenemann.de"
|
||||
msgstr "http://www.holgerkoenemann.de"
|
||||
|
||||
msgid "Proceed to checkout"
|
||||
msgstr "Prosseguir com a compra"
|
||||
|
||||
msgid "Apply coupon"
|
||||
msgstr "Aplicar cupão"
|
||||
|
||||
msgid "Update cart"
|
||||
msgstr "Atualizar carrinho"
|
||||
|
||||
msgid "Your order"
|
||||
msgstr "A sua encomenda"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Combinação do tema _s da Automattic com Bootstrap 4. Feito como um sólido "
|
||||
#~ "ponto de partida para o tema do seu próximo website WordPress. Usar como "
|
||||
#~ "tema de arranque ou como tema base, cabe a si definir."
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,810 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: understrap\n"
|
||||
"Report-Msgid-Bugs-To: http://wordpress.org/support/theme/_s\n"
|
||||
"POT-Creation-Date: 2018-06-17 17:56+0000\n"
|
||||
"POT-Revision-Date: Mon Jul 04 2016 09:13:18 GMT+0200 (CEST)\n"
|
||||
"PO-Revision-Date: 2019-02-01 10:57+0100\n"
|
||||
"Language-Team: \n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
|
||||
"%100==4 ? 2 : 3);\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 2.0.7\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: Davor Lonzaric <info@fatshape.com>\n"
|
||||
"Language: sl_SI\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 "Rezultati iskanja za: %s"
|
||||
|
||||
#: header.php:34
|
||||
msgid "Skip to content"
|
||||
msgstr "Preskoči na vsebino"
|
||||
|
||||
#: 404.php:24
|
||||
msgid "Oops! That page can’t be found."
|
||||
msgstr "Ups! Strani ni bilo mogoče najti."
|
||||
|
||||
#: 404.php:31
|
||||
msgid ""
|
||||
"It looks like nothing was found at this location. Maybe try one of the links "
|
||||
"below or a search?"
|
||||
msgstr ""
|
||||
"Izgleda, da na tej lokaciji nismo našli ničesar. Poskusite s spodnjimi "
|
||||
"povezavami ali pa z iskalnikom?"
|
||||
|
||||
#: 404.php:42
|
||||
msgid "Most Used Categories"
|
||||
msgstr "Najbolj uporabljene kategorije"
|
||||
|
||||
#. translators: %1$s: smiley
|
||||
#: 404.php:62
|
||||
#, php-format
|
||||
msgid "Try looking in the monthly archives. %1$s"
|
||||
msgstr "Pokukajte v mesečni arhiv. %1$s"
|
||||
|
||||
#: author.php:34
|
||||
msgid "About:"
|
||||
msgstr "O avtorju:"
|
||||
|
||||
#: author.php:42 inc/custom-comments.php:30
|
||||
msgid "Website"
|
||||
msgstr "Spletna stran"
|
||||
|
||||
#: author.php:49
|
||||
msgid "Profile"
|
||||
msgstr "Profil"
|
||||
|
||||
#: author.php:54
|
||||
msgid "Posts by"
|
||||
msgstr "Objave od"
|
||||
|
||||
#: author.php:68
|
||||
msgid "in"
|
||||
msgstr ""
|
||||
|
||||
#: comments.php:28
|
||||
#, php-format
|
||||
msgctxt "comments title"
|
||||
msgid "One thought on “%2$s”"
|
||||
msgid_plural "%1$s thoughts on “%2$s”"
|
||||
msgstr[0] "Ena misel o “%2$s”"
|
||||
msgstr[1] "%1$s misli o “%2$s”"
|
||||
msgstr[2] "%1$s misli o “%2$s”"
|
||||
msgstr[3] "%1$s misli o “%2$s”"
|
||||
|
||||
#: comments.php:36 comments.php:59
|
||||
msgid "Comment navigation"
|
||||
msgstr "Navigacija komentarjev"
|
||||
|
||||
#: comments.php:38 comments.php:61
|
||||
msgid "← Older Comments"
|
||||
msgstr "← Starejši komentarji"
|
||||
|
||||
#: comments.php:42 comments.php:65
|
||||
msgid "Newer Comments →"
|
||||
msgstr "Novejši komentarji →"
|
||||
|
||||
#: comments.php:78
|
||||
msgid "Comments are closed."
|
||||
msgstr "Komentarji so zaklenjeni."
|
||||
|
||||
#: footer.php:27
|
||||
msgid "http://wordpress.org/"
|
||||
msgstr "http://wordpress.org/"
|
||||
|
||||
#: footer.php:28
|
||||
#, php-format
|
||||
msgid "Proudly powered by %s"
|
||||
msgstr "Ponosno poganja %s"
|
||||
|
||||
#: footer.php:31
|
||||
#, php-format
|
||||
msgid "Theme: %1$s by %2$s."
|
||||
msgstr "Tema: %1$s od %2$s."
|
||||
|
||||
#: footer.php:33
|
||||
#, php-format
|
||||
msgid "Version: %1$s"
|
||||
msgstr "Verzija: %1$s"
|
||||
|
||||
#: searchform.php:10 searchform.php:16
|
||||
msgid "Search"
|
||||
msgstr "Iskanje"
|
||||
|
||||
#: searchform.php:13
|
||||
msgid "Search …"
|
||||
msgstr "Iskanje …"
|
||||
|
||||
#: 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 "Strani:"
|
||||
|
||||
#: loop-templates/content-page.php:34
|
||||
#: loop-templates/content-verticalpage.php:37
|
||||
msgid "Edit"
|
||||
msgstr "Uredi"
|
||||
|
||||
#: loop-templates/content-none.php:15
|
||||
msgid "Nothing Found"
|
||||
msgstr "Nič ni mogoče najti"
|
||||
|
||||
#: loop-templates/content-none.php:23
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
|
||||
msgstr ""
|
||||
"Ste pripravljeni objaviti prvo objavo? <a href=\"%1$s\"> Začnite tukaj </a>."
|
||||
|
||||
#: loop-templates/content-none.php:28
|
||||
msgid ""
|
||||
"Sorry, but nothing matched your search terms. Please try again with some "
|
||||
"different keywords."
|
||||
msgstr ""
|
||||
"Oprostite, toda nič ne ustreza vašemu iskalnemu nizu. Poskusite znova z "
|
||||
"drugimi ključnimi besedami."
|
||||
|
||||
#: loop-templates/content-none.php:34
|
||||
msgid ""
|
||||
"It seems we can’t find what you’re looking for. Perhaps "
|
||||
"searching can help."
|
||||
msgstr ""
|
||||
"Videti je, da ne moremo najti tistega, kar iščete. Pomagajte si z iskalcem."
|
||||
|
||||
#. Name of the template
|
||||
msgid "Blank Page Template"
|
||||
msgstr "Predloga s prazno stranjo"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left and Right Sidebar Layout"
|
||||
msgstr "Razporeditev za levo in desno stransko pasico"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Empty Page Template"
|
||||
msgstr "Predloga s prazno stranjo"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Full Width Page"
|
||||
msgstr "Stran čez celo širino"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Left Sidebar Layout"
|
||||
msgstr "Razporeditev za levo stransko pasico"
|
||||
|
||||
#. Name of the template
|
||||
msgid "Vertical One Page"
|
||||
msgstr "Ena vertikalna stran"
|
||||
|
||||
#: inc/template-tags.php:18
|
||||
#, php-format
|
||||
msgid " Edited %4$s"
|
||||
msgstr "Urejeno %4$s"
|
||||
|
||||
#: inc/template-tags.php:29
|
||||
#, php-format
|
||||
msgctxt "post date"
|
||||
msgid "Posted on %s"
|
||||
msgstr "Poslano: %s"
|
||||
|
||||
#: inc/template-tags.php:34
|
||||
#, php-format
|
||||
msgctxt "post author"
|
||||
msgid "by %s"
|
||||
msgstr "od %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 "Poslano v %1$s"
|
||||
|
||||
#: inc/template-tags.php:59
|
||||
#, php-format
|
||||
msgid "Tagged %1$s"
|
||||
msgstr "Označeno %1$s"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "Leave a comment"
|
||||
msgstr "Napiši komentar"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "1 Comment"
|
||||
msgstr "1 Komentar"
|
||||
|
||||
#: inc/template-tags.php:65
|
||||
msgid "% Comments"
|
||||
msgstr "% komentarjev"
|
||||
|
||||
#. translators: %s: Name of current post
|
||||
#: inc/template-tags.php:72
|
||||
#, php-format
|
||||
msgid "Edit %s"
|
||||
msgstr "Uredi %s"
|
||||
|
||||
#: inc/template-tags.php:143
|
||||
msgid "Post navigation"
|
||||
msgstr "Navigacija za objave"
|
||||
|
||||
#: inc/template-tags.php:148
|
||||
msgctxt "Previous post link"
|
||||
msgid "<i class=\"fa fa-angle-left\"></i> %title"
|
||||
msgstr "<i class=\"fa fa-angle-left\"></i> %title"
|
||||
|
||||
#: inc/template-tags.php:151
|
||||
msgctxt "Next post link"
|
||||
msgid "%title <i class=\"fa fa-angle-right\"></i>"
|
||||
msgstr "%title <i class=\"fa fa-angle-right\"></i>"
|
||||
|
||||
#: inc/setup.php:51
|
||||
msgid "Primary Menu"
|
||||
msgstr "Primarni meni"
|
||||
|
||||
#: inc/setup.php:122
|
||||
msgid "Read More..."
|
||||
msgstr "Preberi več..."
|
||||
|
||||
#: inc/widgets.php:14
|
||||
msgid "Right Sidebar"
|
||||
msgstr "Desna stranska pasica"
|
||||
|
||||
#: inc/widgets.php:24
|
||||
msgid "Left Sidebar"
|
||||
msgstr "Leva stranska pasica"
|
||||
|
||||
#: inc/widgets.php:34
|
||||
msgid "Hero Slider"
|
||||
msgstr "Hero drsnik"
|
||||
|
||||
#: inc/widgets.php:44
|
||||
msgid "Hero Static"
|
||||
msgstr "Hero Static"
|
||||
|
||||
#: inc/widgets.php:54
|
||||
msgid "Footer Full"
|
||||
msgstr "Noga čez celo širino"
|
||||
|
||||
#: inc/custom-comments.php:24
|
||||
msgid "Name"
|
||||
msgstr "Ime"
|
||||
|
||||
#: inc/custom-comments.php:27
|
||||
msgid "Email"
|
||||
msgstr "E-pošta"
|
||||
|
||||
#: inc/custom-comments.php:49
|
||||
msgctxt "noun"
|
||||
msgid "Comment"
|
||||
msgstr "Komentar"
|
||||
|
||||
#: inc/customizer.php:36
|
||||
msgid "Slider Settings"
|
||||
msgstr "Nastavitve drsnika"
|
||||
|
||||
#: inc/customizer.php:45
|
||||
msgid "Number of slides displaying at once"
|
||||
msgstr "Število elementov drsnika prikazanih naenkrat"
|
||||
|
||||
#: inc/customizer.php:57
|
||||
msgid "Slider Time (in ms)"
|
||||
msgstr "Čas drsnika (v ms)"
|
||||
|
||||
#: inc/customizer.php:69
|
||||
msgid "Loop Slider Content"
|
||||
msgstr "Vsebina drsnika"
|
||||
|
||||
#: inc/customizer.php:81
|
||||
msgid "Theme Layout Settings"
|
||||
msgstr "Nastavitve razporeditev v temi"
|
||||
|
||||
#: inc/customizer.php:83
|
||||
msgid "Container width and sidebar defaults"
|
||||
msgstr "Privzeta širina kontejnerja in stranskih pasic"
|
||||
|
||||
#: inc/customizer.php:98
|
||||
msgid "Container Width"
|
||||
msgstr "Širina kontejnerja"
|
||||
|
||||
#: inc/customizer.php:99
|
||||
msgid "Choose between Bootstrap's container and container-fluid"
|
||||
msgstr ""
|
||||
"Izberite med Bootstrap \"container\" (omejen) ali \"container-fluid"
|
||||
"\" (razpotegnjen)"
|
||||
|
||||
#: inc/customizer.php:104
|
||||
msgid "Fixed width container"
|
||||
msgstr "Stran s fiksno širino"
|
||||
|
||||
#: inc/customizer.php:105
|
||||
msgid "Full width container"
|
||||
msgstr "Čez celo širino"
|
||||
|
||||
#: inc/customizer.php:122
|
||||
msgid "Sidebar Positioning"
|
||||
msgstr "Pozicija stranske pasice"
|
||||
|
||||
#: inc/customizer.php:123
|
||||
msgid "Set sidebar's position. Can either be: right, left, both or none"
|
||||
msgstr ""
|
||||
"Nastavite pozicijo stranske pasice. Lahko je: desno, levo, oboje ali nič"
|
||||
|
||||
#: inc/customizer.php:129
|
||||
msgid "Right sidebar"
|
||||
msgstr "Desna stranska pasica"
|
||||
|
||||
#: inc/customizer.php:130
|
||||
msgid "Left sidebar"
|
||||
msgstr "Leva stranska pasica"
|
||||
|
||||
#: inc/customizer.php:131
|
||||
msgid "Left & Right sidebars"
|
||||
msgstr "Leva in desna stranska pasica"
|
||||
|
||||
#: inc/customizer.php:132
|
||||
msgid "No sidebar"
|
||||
msgstr "Brez stranske pasica"
|
||||
|
||||
#: inc/customizer.php:150
|
||||
msgid "Posts Index Style"
|
||||
msgstr "Slog indeksa objav"
|
||||
|
||||
#: inc/customizer.php:151
|
||||
msgid "Choose how to display latest posts"
|
||||
msgstr "Izberite kako prikazovati zadnje objave"
|
||||
|
||||
#: inc/customizer.php:156
|
||||
msgid "Default"
|
||||
msgstr "Privzeto"
|
||||
|
||||
#: inc/customizer.php:157
|
||||
msgid "Masonry"
|
||||
msgstr "Zidaki"
|
||||
|
||||
#: inc/customizer.php:158
|
||||
msgid "Grid"
|
||||
msgstr "Mreža"
|
||||
|
||||
#: inc/customizer.php:187
|
||||
msgid "Grid Post Columns"
|
||||
msgstr "Stolpci objav v mreži"
|
||||
|
||||
#: inc/customizer.php:188
|
||||
msgid "Choose how many columns to use"
|
||||
msgstr "Izberite koliko vrstic uporabiti"
|
||||
|
||||
#: woocommerce/cart/proceed-to-checkout-button.php:27
|
||||
msgid "Proceed to Checkout"
|
||||
msgstr "Na blagajno"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:49 woocommerce/cart/cart.php:60
|
||||
msgid "Remove this item"
|
||||
msgstr "Odstrani izdelek"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:72
|
||||
msgid "No products in the cart."
|
||||
msgstr "V košarici ni izdelkov."
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:80
|
||||
msgid "Subtotal"
|
||||
msgstr "Vmesni znesek"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:85
|
||||
msgid "View Cart"
|
||||
msgstr "Poglej košarico"
|
||||
|
||||
#: woocommerce/cart/mini-cart.php:86
|
||||
msgid "Checkout"
|
||||
msgstr "Na blagajno"
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:28
|
||||
msgid "Your cart is currently empty."
|
||||
msgstr "Vaša košarica je trenutno prazna."
|
||||
|
||||
#: woocommerce/cart/cart-empty.php:36
|
||||
msgid "Return To Shop"
|
||||
msgstr "Nadaljuj z nakupom"
|
||||
|
||||
#: woocommerce/cart/cart.php:36 woocommerce/cart/cart.php:79
|
||||
#: woocommerce/checkout/form-pay.php:29
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#: woocommerce/cart/cart.php:37 woocommerce/cart/cart.php:97
|
||||
msgid "Price"
|
||||
msgstr "Cena"
|
||||
|
||||
#: woocommerce/cart/cart.php:38 woocommerce/cart/cart.php:103
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
#: woocommerce/cart/cart.php:39 woocommerce/cart/cart.php:120
|
||||
#: woocommerce/myaccount/my-orders.php:16
|
||||
msgid "Total"
|
||||
msgstr "Skupaj"
|
||||
|
||||
#: woocommerce/cart/cart.php:92
|
||||
msgid "Available on backorder"
|
||||
msgstr "Na voljo kot prednaročilo"
|
||||
|
||||
#: woocommerce/cart/cart.php:138
|
||||
msgid "Coupon:"
|
||||
msgstr "Kupon:"
|
||||
|
||||
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:36
|
||||
msgid "Coupon code"
|
||||
msgstr "Koda kupona"
|
||||
|
||||
#: woocommerce/cart/cart.php:138 woocommerce/checkout/form-coupon.php:40
|
||||
msgid "Apply Coupon"
|
||||
msgstr "Unovči kupon"
|
||||
|
||||
#: woocommerce/cart/cart.php:144
|
||||
msgid "Update Cart"
|
||||
msgstr "Posodobi košarico"
|
||||
|
||||
#: 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 ""
|
||||
"Žal kaže, da za vašo državo ni na voljo nobenega načina plačila. Če "
|
||||
"potrebujete pomoč ali želite alternativno rešitev, nas prosim kontaktirajte."
|
||||
|
||||
#: woocommerce/checkout/payment.php:35
|
||||
msgid "Please fill in your details above to see available payment methods."
|
||||
msgstr ""
|
||||
"Vnesite svoje podatke zgoraj, da boste videli razpoložljive načine plačila."
|
||||
|
||||
#: 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 ""
|
||||
"Ker vaš brskalnik ne podpira JavaScripta ali pa je onemogočen, se "
|
||||
"prepričajte, da kliknete gumb <em> Posodobi končni znesek </em>, preden "
|
||||
"oddate naročilo. Če tega ne storite, vam lahko zaračunamo več, kot je "
|
||||
"navedeno zgoraj."
|
||||
|
||||
#: woocommerce/checkout/payment.php:43
|
||||
msgid "Update totals"
|
||||
msgstr "Posodobi končni znesek"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:30
|
||||
msgid "Qty"
|
||||
msgstr "Kol"
|
||||
|
||||
#: woocommerce/checkout/form-pay.php:31
|
||||
msgid "Totals"
|
||||
msgstr "Skupaj"
|
||||
|
||||
#: 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 ""
|
||||
"Žal kaže, da za vašo lokacijo ni na voljo nobenega načina plačila. Če "
|
||||
"potrebujete pomoč ali želite alternativno rešitev, nas prosim kontaktirajte."
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Have a coupon?"
|
||||
msgstr "Imate kupon?"
|
||||
|
||||
#: woocommerce/checkout/form-coupon.php:28
|
||||
msgid "Click here to enter your code"
|
||||
msgstr "Kliknite sem za vpis kode"
|
||||
|
||||
#: woocommerce/global/form-login.php:35
|
||||
#: woocommerce/myaccount/form-lost-password.php:30
|
||||
msgid "Username or email"
|
||||
msgstr "Uporabniško ime ali email"
|
||||
|
||||
#: woocommerce/global/form-login.php:39 woocommerce/myaccount/form-login.php:48
|
||||
#: woocommerce/myaccount/form-login.php:98
|
||||
msgid "Password"
|
||||
msgstr "Geslo"
|
||||
|
||||
#: woocommerce/global/form-login.php:48 woocommerce/myaccount/form-login.php:37
|
||||
#: woocommerce/myaccount/form-login.php:56
|
||||
msgid "Login"
|
||||
msgstr "Prijava"
|
||||
|
||||
#: woocommerce/global/form-login.php:51 woocommerce/myaccount/form-login.php:58
|
||||
msgid "Remember me"
|
||||
msgstr "Zapomni si me"
|
||||
|
||||
#: woocommerce/global/form-login.php:55 woocommerce/myaccount/form-login.php:62
|
||||
msgid "Lost your password?"
|
||||
msgstr "Izgubljeno geslo?"
|
||||
|
||||
#: woocommerce/global/quantity-input.php:24
|
||||
msgctxt "Product quantity input tooltip"
|
||||
msgid "Qty"
|
||||
msgstr "Kol"
|
||||
|
||||
#: 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 ""
|
||||
"Pozabili geslo? Vnesite svoje uporabniško ime ali e-poštni naslov. Prejeli "
|
||||
"boste povezavo za ustvarjanje novega gesla po e-pošti."
|
||||
|
||||
#: woocommerce/myaccount/form-lost-password.php:40
|
||||
msgid "Reset Password"
|
||||
msgstr "Ponastavi geslo"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:44
|
||||
msgid "Username or email address"
|
||||
msgstr "Uporabniško ime ali email naslov"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:75
|
||||
#: woocommerce/myaccount/form-login.php:112
|
||||
msgid "Register"
|
||||
msgstr "Registriraj se"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:84
|
||||
msgid "Username"
|
||||
msgstr "Uporabniško ime"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:91
|
||||
#: woocommerce/myaccount/form-edit-account.php:40
|
||||
msgid "Email address"
|
||||
msgstr "E-mail naslov"
|
||||
|
||||
#: woocommerce/myaccount/form-login.php:105
|
||||
msgid "Anti-spam"
|
||||
msgstr "Anti-spam"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:30
|
||||
msgid "First name"
|
||||
msgstr "Ime"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:34
|
||||
msgid "Last name"
|
||||
msgstr "Priimek"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:45
|
||||
msgid "Password Change"
|
||||
msgstr "Menjava gesla"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:48
|
||||
msgid "Current Password (leave blank to leave unchanged)"
|
||||
msgstr "Trenutno geslo (pustite prazno, če ne želite spremeniti)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:52
|
||||
msgid "New Password (leave blank to leave unchanged)"
|
||||
msgstr "Novo geslo (pustite prazno, če ne želite spremeniti)"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:56
|
||||
msgid "Confirm New Password"
|
||||
msgstr "Potrdite novo geslo"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-account.php:66
|
||||
msgid "Save changes"
|
||||
msgstr "Shrani spremembe"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:13
|
||||
msgid "Order"
|
||||
msgstr "Naročilo"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:14
|
||||
msgid "Date"
|
||||
msgstr "Datum"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:15
|
||||
msgid "Status"
|
||||
msgstr "Stanje"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:30
|
||||
msgid "Recent Orders"
|
||||
msgstr "Zadnja naročila"
|
||||
|
||||
#: 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 za %s izdelek"
|
||||
msgstr[1] "%s za %s izdelka"
|
||||
msgstr[2] "%s za %s izdelke"
|
||||
msgstr[3] "%s za %s izdelkov"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:72 woocommerce/myaccount/orders.php:68
|
||||
msgid "Pay"
|
||||
msgstr "Plačaj"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:76 woocommerce/myaccount/orders.php:72
|
||||
msgid "View"
|
||||
msgstr "Poglej"
|
||||
|
||||
#: woocommerce/myaccount/my-orders.php:80 woocommerce/myaccount/orders.php:76
|
||||
msgid "Cancel"
|
||||
msgstr "Prekliči"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:107
|
||||
msgid "Previous"
|
||||
msgstr "Prejšnji"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:111
|
||||
msgid "Next"
|
||||
msgstr "Naslednji"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:119 woocommerce/myaccount/downloads.php:98
|
||||
msgid "Go Shop"
|
||||
msgstr "Pojdi nakupovati"
|
||||
|
||||
#: woocommerce/myaccount/orders.php:121
|
||||
msgid "No order has been made yet."
|
||||
msgstr "Do sedaj ni bilo oddano nobeno naročilo."
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Billing Address"
|
||||
msgstr "Naslov plačnika"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:23
|
||||
msgid "Shipping Address"
|
||||
msgstr "Naslov prejemnika"
|
||||
|
||||
#: woocommerce/myaccount/form-edit-address.php:46
|
||||
msgid "Save Address"
|
||||
msgstr "Shrani naslov"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:27
|
||||
msgid "Enter a new password below."
|
||||
msgstr "Vnesite novo geslo."
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:30
|
||||
msgid "New password"
|
||||
msgstr "Novo geslo"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:34
|
||||
msgid "Re-enter new password"
|
||||
msgstr "Znova vnesite novo geslo"
|
||||
|
||||
#: woocommerce/myaccount/form-reset-password.php:47
|
||||
msgid "Save"
|
||||
msgstr "Shrani"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:59
|
||||
msgid "∞"
|
||||
msgstr "∞"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:67
|
||||
msgid "Never"
|
||||
msgstr "Nikoli"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:75
|
||||
msgid "Download"
|
||||
msgstr "Prenos"
|
||||
|
||||
#: woocommerce/myaccount/downloads.php:100
|
||||
msgid "No downloads available yet."
|
||||
msgstr "Zaenkrat še ni razpoložljivih prenosov."
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:28
|
||||
#, php-format
|
||||
msgid "Rated %d out of 5"
|
||||
msgstr "Ocena %d od 5"
|
||||
|
||||
#: woocommerce/single-product/review-rating.php:29
|
||||
msgid "out of 5"
|
||||
msgstr "od 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:36
|
||||
#, php-format
|
||||
msgid "Rated %s out of 5"
|
||||
msgstr "Ocena %s od 5"
|
||||
|
||||
#: woocommerce/single-product/rating.php:38
|
||||
#, php-format
|
||||
msgid "out of %s5%s"
|
||||
msgstr "od %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] "glede na %s uporabnikovo oceno"
|
||||
msgstr[1] "glede na %s uporabnikovi oceni"
|
||||
msgstr[2] "glede na %s uporabnikove ocene"
|
||||
msgstr[3] "glede na %s uporabniških ocen"
|
||||
|
||||
#: woocommerce/single-product/rating.php:42
|
||||
#, php-format
|
||||
msgid "%s customer review"
|
||||
msgid_plural "%s customer reviews"
|
||||
msgstr[0] "%s mnenje uporabnika"
|
||||
msgstr[1] "%s mnenji uporabnikov"
|
||||
msgstr[2] "%s mnenja uporabnikov"
|
||||
msgstr[3] "%s mnenj uporabnikov"
|
||||
|
||||
#. 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 ""
|
||||
"Kombinacija teme \"_s\" s strani Automattic ekipe in Bootstrap 4. Namenjena "
|
||||
"kot izhodiščni točki pri izdelavi predloge (teme) in WordPress spletne "
|
||||
"strani. Uporabite jo lahko kot začetno temo ali kot nadrejeno temo. Podpira "
|
||||
"Font Awesome, ima vgrajen drsnik za gradnike in še veliko več. POMEMBNO: Vse "
|
||||
"odvisnosti razvijalcev niso povezane s to namestitveno datoteko. Preprosto "
|
||||
"prenesite datoteko .zip, jo odpakirajte in zaženite \"npm install\" in "
|
||||
"\"gulp copy-assets\" v mapi /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 "Proceed to checkout"
|
||||
msgstr "Na blagajno"
|
||||
|
||||
msgid "Apply coupon"
|
||||
msgstr "Unovči kupon"
|
||||
|
||||
msgid "Update cart"
|
||||
msgstr "Posodobi košarico"
|
||||
|
||||
msgid "Your order"
|
||||
msgstr "Vaše naročilo"
|
|
@ -1,8 +1,11 @@
|
|||
<?php
|
||||
/**
|
||||
* Blank content partial template.
|
||||
* Blank content partial template
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
the_content();
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
<?php
|
||||
/**
|
||||
* Content empty partial template.
|
||||
* Content empty partial template
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
the_content();
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
<?php
|
||||
/**
|
||||
* The template part for displaying a message that posts cannot be found.
|
||||
* The template part for displaying a message that posts cannot be found
|
||||
*
|
||||
* Learn more: http://codex.wordpress.org/Template_Hierarchy
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<section class="no-results not-found">
|
||||
|
@ -20,25 +22,33 @@
|
|||
<div class="page-content">
|
||||
|
||||
<?php
|
||||
if ( is_home() && current_user_can( 'publish_posts' ) ) : ?>
|
||||
if ( is_home() && current_user_can( 'publish_posts' ) ) :
|
||||
|
||||
<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>
|
||||
$kses = array( 'a' => array( 'href' => array() ) );
|
||||
printf(
|
||||
/* translators: 1: Link to WP admin new post page. */
|
||||
'<p>' . wp_kses( __( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.', 'understrap' ), $kses ) . '</p>',
|
||||
esc_url( admin_url( 'post-new.php' ) )
|
||||
);
|
||||
|
||||
<?php elseif ( is_search() ) : ?>
|
||||
elseif ( is_search() ) :
|
||||
|
||||
<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 : ?>
|
||||
printf(
|
||||
'<p>%s<p>',
|
||||
esc_html__( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.', 'understrap' )
|
||||
);
|
||||
get_search_form();
|
||||
|
||||
<p><?php esc_html_e( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'understrap' ); ?></p>
|
||||
<?php
|
||||
get_search_form();
|
||||
endif; ?>
|
||||
else :
|
||||
|
||||
printf(
|
||||
'<p>%s<p>',
|
||||
esc_html__( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'understrap' )
|
||||
);
|
||||
get_search_form();
|
||||
|
||||
endif;
|
||||
?>
|
||||
</div><!-- .page-content -->
|
||||
|
||||
|
||||
</section><!-- .no-results -->
|
||||
|
|
|
@ -5,7 +5,10 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
|
||||
|
||||
<header class="entry-header">
|
||||
|
@ -21,10 +24,12 @@
|
|||
<?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 -->
|
||||
|
|
|
@ -1,19 +1,26 @@
|
|||
<?php
|
||||
/**
|
||||
* Search results partial template.
|
||||
* Search results partial template
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<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() ) : ?>
|
||||
<?php if ( 'post' === get_post_type() ) : ?>
|
||||
|
||||
<div class="entry-meta">
|
||||
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
<?php
|
||||
/**
|
||||
* Single post partial template.
|
||||
* Single post partial template
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<article <?php post_class(); ?> id="post-<?php the_ID(); ?>">
|
||||
|
||||
<header class="entry-header">
|
||||
|
@ -27,10 +30,12 @@
|
|||
<?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 -->
|
||||
|
|
|
@ -1,20 +1,26 @@
|
|||
<?php
|
||||
/**
|
||||
* Post rendering content according to caller of get_template_part.
|
||||
* Post rendering content according to caller of get_template_part
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<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() ) : ?>
|
||||
<?php if ( 'post' === get_post_type() ) : ?>
|
||||
|
||||
<div class="entry-meta">
|
||||
<?php understrap_posted_on(); ?>
|
||||
|
@ -28,15 +34,15 @@
|
|||
|
||||
<div class="entry-content">
|
||||
|
||||
<?php
|
||||
the_excerpt();
|
||||
?>
|
||||
<?php the_excerpt(); ?>
|
||||
|
||||
<?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 -->
|
||||
|
|
File diff suppressed because it is too large
Load Diff
44
package.json
44
package.json
|
@ -1,17 +1,18 @@
|
|||
{
|
||||
"name": "understrap",
|
||||
"version": "0.8.3",
|
||||
"version": "0.9.4",
|
||||
"description": "WordPress Theme framework",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"postinstall": "gulp copy-assets"
|
||||
"postinstall": "gulp copy-assets",
|
||||
"watch-bs": "gulp watch-bs"
|
||||
},
|
||||
"engines": {
|
||||
"npm": ">=2.1.8"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/holger1411/understrap.git"
|
||||
"url": "https://github.com/understrap/understrap.git"
|
||||
},
|
||||
"keywords": [
|
||||
"wordpress",
|
||||
|
@ -27,26 +28,29 @@
|
|||
},
|
||||
"homepage": "https://understrap.com",
|
||||
"dependencies": {
|
||||
"autoprefixer": "^8.6.4",
|
||||
"bootstrap": "4.1.1",
|
||||
"browser-sync": "^2.24.5",
|
||||
"del": "^3.0.0",
|
||||
"browsersync": "0.0.1-security"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.9.0",
|
||||
"@babel/preset-env": "^7.9.5",
|
||||
"autoprefixer": "^9.7.6",
|
||||
"bootstrap": "^4.4.1",
|
||||
"browser-sync": "^2.26.7",
|
||||
"del": "^4.1.1",
|
||||
"font-awesome": "^4.7.0",
|
||||
"gulp": "4.0.0",
|
||||
"gulp-clean-css": "^3.9.4",
|
||||
"gulp": "^4.0.2",
|
||||
"gulp-babel": "^8.0.0",
|
||||
"gulp-clean-css": "^4.3.0",
|
||||
"gulp-concat": "^2.6.1",
|
||||
"gulp-imagemin": "^4.1.0",
|
||||
"gulp-postcss": "^7.0.1",
|
||||
"gulp-rename": "^1.3.0",
|
||||
"gulp-imagemin": "^5.0.3",
|
||||
"gulp-plumber": "^1.2.1",
|
||||
"gulp-postcss": "^8.0.0",
|
||||
"gulp-rename": "^1.4.0",
|
||||
"gulp-replace": "^1.0.0",
|
||||
"gulp-rev": "^8.1.1",
|
||||
"gulp-sass": "^4.0.1",
|
||||
"gulp-sourcemaps": "2.6.4",
|
||||
"gulp-uglify": "^3.0.0",
|
||||
"gulp-watch": "5.0.0",
|
||||
"merge2": "^1.2.2",
|
||||
"popper.js": "^1.14.3",
|
||||
"rev-del": "^1.0.5",
|
||||
"gulp-sass": "^4.1.0",
|
||||
"gulp-sourcemaps": "^2.6.5",
|
||||
"gulp-touch-fd": "^2.0.0",
|
||||
"gulp-uglify": "^3.0.2",
|
||||
"undescores-for-npm": "^1.0.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html <?php language_attributes(); ?>>
|
||||
|
@ -14,20 +16,16 @@
|
|||
<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 get_template_part( 'loop-templates/content', 'blank' ); ?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
<?php wp_footer(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
get_template_part( 'loop-templates/content', 'blank' );
|
||||
}
|
||||
wp_footer();
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -7,6 +7,9 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
@ -17,41 +20,45 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<div class="row">
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'left' ); ?>
|
||||
<?php
|
||||
get_template_part( 'sidebar-templates/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">
|
||||
if ( is_active_sidebar( 'left-sidebar' ) xor is_active_sidebar( 'right-sidebar' ) ) {
|
||||
$class = 'col-md-8';
|
||||
} elseif ( is_active_sidebar( 'left-sidebar' ) && is_active_sidebar( 'right-sidebar' ) ) {
|
||||
$class = 'col-md-4';
|
||||
} else {
|
||||
$class = 'col-md-12';
|
||||
}
|
||||
?>
|
||||
<div class="<?php echo $class; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?> content-area" id="primary">
|
||||
|
||||
<main class="site-main" id="main" role="main">
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
||||
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
|
||||
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() ) :
|
||||
if ( comments_open() || get_comments_number() ) {
|
||||
comments_template();
|
||||
endif;
|
||||
?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
</div><!-- #primary -->
|
||||
|
||||
<?php get_template_part( 'sidebar-templates/sidebar', 'right' ); ?>
|
||||
|
||||
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #page-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
|
@ -8,9 +8,13 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
|
||||
while ( have_posts() ) : the_post();
|
||||
while ( have_posts() ) :
|
||||
the_post();
|
||||
get_template_part( 'loop-templates/content', 'empty' );
|
||||
endwhile;
|
||||
|
||||
|
|
|
@ -7,8 +7,15 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
|
||||
if ( is_front_page() ) {
|
||||
get_template_part( 'global-templates/hero' );
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="wrapper" id="full-width-page-wrapper">
|
||||
|
@ -21,20 +28,17 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<main class="site-main" id="main" role="main">
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
get_template_part( 'loop-templates/content', 'page' );
|
||||
|
||||
<?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() ) :
|
||||
|
||||
if ( comments_open() || get_comments_number() ) {
|
||||
comments_template();
|
||||
|
||||
endif;
|
||||
?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
|
@ -42,8 +46,9 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
</div><!-- .row end -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #full-width-page-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
|
@ -7,6 +7,9 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
@ -19,24 +22,22 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<?php get_template_part( 'sidebar-templates/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">
|
||||
<div class="<?php echo is_active_sidebar( 'right-sidebar' ) ? 'col-md-8' : 'col-md-12'; ?> content-area" id="primary">
|
||||
|
||||
<main class="site-main" id="main" role="main">
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
||||
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
|
||||
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() ) :
|
||||
if ( comments_open() || get_comments_number() ) {
|
||||
comments_template();
|
||||
endif;
|
||||
?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
|
@ -44,8 +45,9 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #page-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
|
@ -7,6 +7,9 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
@ -17,24 +20,22 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<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">
|
||||
<div class="<?php echo is_active_sidebar( 'right-sidebar' ) ? 'col-md-8' : 'col-md-12'; ?> content-area" id="primary">
|
||||
|
||||
<main class="site-main" id="main" role="main">
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
|
||||
<?php get_template_part( 'loop-templates/content', 'page' ); ?>
|
||||
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() ) :
|
||||
if ( comments_open() || get_comments_number() ) {
|
||||
comments_template();
|
||||
endif;
|
||||
?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
|
@ -44,8 +45,9 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #page-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
37
page.php
37
page.php
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying all pages.
|
||||
* The template for displaying all pages
|
||||
*
|
||||
* This is the template that displays all pages by default.
|
||||
* Please note that this is the WordPress construct of pages
|
||||
|
@ -10,9 +10,12 @@
|
|||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
|
||||
?>
|
||||
|
||||
|
@ -27,28 +30,28 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
<main class="site-main" id="main">
|
||||
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) {
|
||||
the_post();
|
||||
get_template_part( 'loop-templates/content', 'page' );
|
||||
|
||||
<?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() ) :
|
||||
if ( comments_open() || get_comments_number() ) {
|
||||
comments_template();
|
||||
endif;
|
||||
?>
|
||||
|
||||
<?php endwhile; // end of the loop. ?>
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</main><!-- #main -->
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
|
||||
</div><!-- .row -->
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #page-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
|
@ -0,0 +1,92 @@
|
|||
<?xml version="1.0"?>
|
||||
<ruleset name="UnderStrap Coding Standards">
|
||||
|
||||
<description>Apply WordPress Coding Standards to UnderStrap</description>
|
||||
|
||||
<!-- Only scan PHP files. -->
|
||||
<arg name="extensions" value="php"/>
|
||||
|
||||
<!-- Whenever possible, cache the scan results and re-use those for unchanged files on the next scan. -->
|
||||
<arg name="cache"/>
|
||||
|
||||
<!-- Strip the filepaths down to the relevant bit. -->
|
||||
<arg name="basepath" value="./"/>
|
||||
|
||||
<!-- Show colors in console -->
|
||||
<arg value="-colors"/>
|
||||
|
||||
<!-- Show sniff codes in all reports -->
|
||||
<arg value="s"/>
|
||||
|
||||
<!-- Don't show warnings -->
|
||||
<arg value="n"/>
|
||||
|
||||
<!-- Scan these files -->
|
||||
<file>.</file>
|
||||
|
||||
<!-- Directories and third party library exclusions. -->
|
||||
<exclude-pattern>/vendor/*</exclude-pattern>
|
||||
<exclude-pattern>/node_modules/*</exclude-pattern>
|
||||
<exclude-pattern>/dist/*</exclude-pattern>
|
||||
|
||||
<!-- Use the WordPress Ruleset -->
|
||||
<rule ref="WordPress"/>
|
||||
|
||||
<!--
|
||||
Verify that the text_domain is set to the desired text-domain.
|
||||
Multiple valid text domains can be provided as a comma-delimited list.
|
||||
-->
|
||||
<rule ref="WordPress.WP.I18n">
|
||||
<properties>
|
||||
<property name="text_domain" type="array" value="understrap"/>
|
||||
</properties>
|
||||
</rule>
|
||||
|
||||
<!--
|
||||
Allow for theme specific exceptions to the file name rules based
|
||||
on the theme hierarchy.
|
||||
-->
|
||||
<rule ref="WordPress.Files.FileName">
|
||||
<properties>
|
||||
<property name="is_theme" value="true"/>
|
||||
</properties>
|
||||
</rule>
|
||||
|
||||
<!-- Assignments in while conditions are a valid method of looping over iterables. -->
|
||||
<rule ref="WordPress.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition">
|
||||
<exclude-pattern>*</exclude-pattern>
|
||||
</rule>
|
||||
|
||||
<!-- Exclude incorrectly named files that won't be renamed. -->
|
||||
<rule ref="WordPress.Files.FileName.InvalidClassFileName">
|
||||
<exclude-pattern>/inc/class-wp-bootstrap-navwalker\.php</exclude-pattern>
|
||||
</rule>
|
||||
|
||||
<rule ref="WordPress.Security.EscapeOutput">
|
||||
<!-- Exclude functions which are escaped in inc/extras.php -->
|
||||
<properties>
|
||||
<property name="customAutoEscapedFunctions" type="array">
|
||||
<element value="get_the_title"/>
|
||||
<element value="get_the_archive_title"/>
|
||||
<element value="get_the_archive_description"/>
|
||||
</property>
|
||||
</properties>
|
||||
</rule>
|
||||
|
||||
<!--
|
||||
Exclude checking of line endings when reporting errors, but fix them
|
||||
when running phpcbf.
|
||||
-->
|
||||
<rule ref="Generic.Files.LineEndings">
|
||||
<exclude phpcs-only="true" name="Generic.Files.LineEndings"/>
|
||||
</rule>
|
||||
|
||||
<!-- A closing tag is not permitted at the end of a PHP file -->
|
||||
<rule ref="Zend.Files.ClosingTag"/>
|
||||
|
||||
<!-- Use the PHPCompatibility Ruleset -->
|
||||
<config name="testVersion" value="5.6-99.0"/>
|
||||
<rule ref="PHPCompatibilityWP">
|
||||
<include-pattern>*\.php$</include-pattern>
|
||||
</rule>
|
||||
</ruleset>
|
|
@ -11,7 +11,7 @@ At the moment, UnderStrap is in a very early stage. But if you want, feel free t
|
|||
|
||||
# UnderStrap WordPress Theme Framework
|
||||
|
||||
Website: [http://understrap.com](http://understrap.com)
|
||||
Website: [https://understrap.com](https://understrap.com)
|
||||
|
||||
Child Theme Project: [https://github.com/holger1411/understrap-child](https://github.com/holger1411/understrap-child)
|
||||
|
||||
|
@ -212,12 +212,12 @@ 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”.
|
||||
- That’s it.
|
||||
|
||||
[1] Visit [http://browsersync.io](http://browsersync.io) for more information on Browser Sync
|
||||
[1] Visit [https://browsersync.io](https://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.)
|
||||
- Bootstrap: https://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)
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
if [ -z "$1" ] ; then
|
||||
_name=${PWD##*/}
|
||||
if [ -z "$_name" ] ; then
|
||||
echo "Error - could not determine theme name"
|
||||
echo "Please rerun and pass theme name as an argument."
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
_name="$1"
|
||||
fi
|
||||
|
||||
# search and replace
|
||||
|
||||
find . -type f -name "*.php" -print0 | xargs -0 sed -i '' -e 's/understrap/'"$_name"'_/g'
|
||||
|
||||
echo
|
||||
echo "---------------------------------"
|
||||
echo "Don't forget to edit `style.css`!"
|
||||
echo "---------------------------------"
|
Binary file not shown.
|
@ -1,7 +1,7 @@
|
|||
/*!
|
||||
* Bootstrap v4.1.0 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2018 The Bootstrap Authors
|
||||
* Copyright 2011-2018 Twitter, Inc.
|
||||
* Bootstrap v4.4.1 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2019 The Bootstrap Authors
|
||||
* Copyright 2011-2019 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
||||
|
@ -34,9 +34,11 @@
|
|||
@import "../../src/sass/bootstrap4/media";
|
||||
@import "../../src/sass/bootstrap4/list-group";
|
||||
@import "../../src/sass/bootstrap4/close";
|
||||
@import "../../src/sass/bootstrap4/toasts";
|
||||
@import "../../src/sass/bootstrap4/modal";
|
||||
@import "../../src/sass/bootstrap4/tooltip";
|
||||
@import "../../src/sass/bootstrap4/popover";
|
||||
@import "../../src/sass/bootstrap4/carousel";
|
||||
@import "../../src/sass/bootstrap4/spinners";
|
||||
@import "../../src/sass/bootstrap4/utilities";
|
||||
@import "../../src/sass/bootstrap4/print";
|
|
@ -1,12 +1,12 @@
|
|||
@import "theme/theme_variables"; // <--------- Add your variables into this file. Also add variables to overwrite Bootstrap or UnderStrap variables here
|
||||
@import "assets/bootstrap4";// <--------- Loads Bootstrap3 or Bootstrap4. Change from /bootstrap3 to /bootstrap4 Watch out! just for testing in the moment!
|
||||
@import "understrap/understrap";// <-------- Loads the UnderStrap defaults. Just a few classes to incorporate BS in WP
|
||||
@import "understrap/woocommerce";// <-------- Loads WooCommerce style fixes. Comment out if you aren't using WooCommerce
|
||||
@import "theme/theme_variables"; // <-------- Add your variables into this file. Also add variables to overwrite Bootstrap or UnderStrap variables here
|
||||
@import "assets/bootstrap4"; // <-------- Loads Bootstrap4
|
||||
@import "understrap/understrap"; // <-------- Loads the UnderStrap defaults. Just a few classes to incorporate BS in WP
|
||||
@import "understrap/woocommerce"; // <-------- Loads WooCommerce style fixes. Comment out if you aren't using WooCommerce
|
||||
|
||||
//Optional files - If you dont use the corresponding scripts/fonts comment em out
|
||||
@import "assets/font-awesome"; // <------- Font Awesome Icon font
|
||||
@import "assets/underscores"; // <------- Underscores media styles
|
||||
// Optional files - If you dont use the corresponding scripts/fonts comment em out
|
||||
// @import "assets/font-awesome"; // <-------- Font Awesome Icon font
|
||||
@import "assets/underscores"; // <-------- Underscores media styles
|
||||
|
||||
// Any additional imported files //
|
||||
@import "theme/theme"; // <--------- That's where you can add your own design. Thats your part!
|
||||
@import "theme/contact-form7"; // Contact Form 7 - Bootstrap 4 support
|
||||
@import "theme/theme"; // <-------- That's where you can add your own design. Thats your part!
|
||||
@import "theme/contact-form7"; // <-------- Contact Form 7 - Bootstrap 4 support
|
||||
|
|
|
@ -1 +1,5 @@
|
|||
// This is an empty scss file for your custom styles - Please add your super duper awesome mega design styles here
|
||||
|
||||
.site-footer {
|
||||
text-align: center;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,66 @@
|
|||
// Use this file to overwrite the basic Bootstrap variables and add your own variables
|
||||
// To overwrite a Bootstrap variable you don´t have to touch the Bootstrap folder.
|
||||
// To overwrite a Bootstrap variable you don´t have to touch the Bootstrap folder.
|
||||
// Just copy a variable from src/sass/bootstrap4/_variables.scss, paste it here and edit the value.
|
||||
|
||||
|
||||
$primary: #6f31cd; // Thats a sample how you could change a BootStrap variable.
|
||||
$primary: #3311cc; // Thats a sample how you could change a BootStrap variable.
|
||||
|
||||
// stylelint-disable value-keyword-case
|
||||
$font-family-sans-serif: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||
$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
$font-family-base: $font-family-sans-serif;
|
||||
// stylelint-enable value-keyword-case
|
||||
|
||||
$font-size-base: 1rem; // Assumes the browser default, typically `16px`
|
||||
$font-size-lg: $font-size-base * 1.25;
|
||||
$font-size-sm: $font-size-base * .875;
|
||||
|
||||
$font-weight-lighter: lighter;
|
||||
$font-weight-light: 300;
|
||||
$font-weight-normal: 400;
|
||||
$font-weight-bold: 600;
|
||||
$font-weight-bolder: bolder;
|
||||
|
||||
$font-weight-base: $font-weight-normal;
|
||||
$line-height-base: 1.5;
|
||||
|
||||
$h1-font-size: $font-size-base * 2.5;
|
||||
$h2-font-size: $font-size-base * 2;
|
||||
$h3-font-size: $font-size-base * 1.75;
|
||||
$h4-font-size: $font-size-base * 1.5;
|
||||
$h5-font-size: $font-size-base * 1.25;
|
||||
$h6-font-size: $font-size-base;
|
||||
|
||||
$headings-font-family: Montserrat, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||
$headings-font-weight: 400;
|
||||
$headings-line-height: 1.2;
|
||||
$headings-color: null;
|
||||
|
||||
$display1-size: 6rem;
|
||||
$display2-size: 5.5rem;
|
||||
$display3-size: 4.5rem;
|
||||
$display4-size: 3.5rem;
|
||||
|
||||
$display1-weight: 300;
|
||||
$display2-weight: 300;
|
||||
$display3-weight: 300;
|
||||
$display4-weight: 300;
|
||||
$display-line-height: $headings-line-height;
|
||||
|
||||
$lead-font-size: $font-size-base * 1.25;
|
||||
$lead-font-weight: 300;
|
||||
|
||||
$small-font-size: 80%;
|
||||
|
||||
$blockquote-small-font-size: $small-font-size;
|
||||
$blockquote-font-size: $font-size-base * 1.25;
|
||||
|
||||
$mark-padding: .2em;
|
||||
|
||||
$dt-font-weight: $font-weight-bold;
|
||||
|
||||
$nested-kbd-font-weight: $font-weight-bold;
|
||||
|
||||
$list-inline-padding: .5rem;
|
||||
|
||||
$mark-bg: #fcf8e3;
|
||||
|
|
|
@ -1,123 +1,149 @@
|
|||
// Some basic padding for all wrappers
|
||||
.wrapper {
|
||||
padding: $grid-gutter-width 0; }
|
||||
padding: $grid-gutter-width 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;
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
// Separate sticky wrapper from main content
|
||||
.wrapper#wrapper-sticky { border-bottom: 1px solid $gray-300; }
|
||||
.wrapper#wrapper-sticky {
|
||||
border-bottom: 1px solid $gray-300;
|
||||
}
|
||||
|
||||
// Adding some contrast background color to footer full widget
|
||||
#wrapper-footer-full,
|
||||
#wrapper-static-hero { background-color: $gray-200; }
|
||||
#wrapper-static-hero {
|
||||
background-color: $gray-200;
|
||||
}
|
||||
|
||||
// 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 {
|
||||
@extend .sr-only;
|
||||
}
|
||||
|
||||
.alignleft {
|
||||
display: inline;
|
||||
float: left;
|
||||
margin-right: 1.5em;
|
||||
display: inline;
|
||||
float: left;
|
||||
margin-right: 1.5em;
|
||||
}
|
||||
|
||||
.alignright {
|
||||
display: inline;
|
||||
float: right;
|
||||
margin-left: 1.5em;
|
||||
display: inline;
|
||||
float: right;
|
||||
margin-left: 1.5em;
|
||||
}
|
||||
|
||||
.aligncenter { margin: 0px auto; }
|
||||
.aligncenter {
|
||||
@extend .mx-auto,
|
||||
.d-block;
|
||||
}
|
||||
|
||||
.widget_categories,
|
||||
.widget_archive {
|
||||
select {
|
||||
@extend .form-control;
|
||||
}
|
||||
}
|
||||
|
||||
// Post design
|
||||
.entry-footer span { padding-right: 10px; }
|
||||
|
||||
//Woocommerce product gallery slider width fix
|
||||
figure.woocommerce-product-gallery__wrapper {
|
||||
max-width: inherit !important;
|
||||
.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%;
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
// Skip to content link
|
||||
a.skip-link {
|
||||
position: fixed;
|
||||
z-index: 1000;
|
||||
top: 0px;
|
||||
right: 0px;
|
||||
position: fixed;
|
||||
z-index: 1000;
|
||||
top: 0px;
|
||||
right: 0px;
|
||||
}
|
||||
|
||||
// Reset Jumbotron default margin
|
||||
.jumbotron { margin-bottom: 0px; }
|
||||
.jumbotron {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
// Dropdown translation
|
||||
.navbar-dark .navbar-nav .dropdown-menu .nav-link{
|
||||
display: block;
|
||||
width: 100%; // For `<button>`s
|
||||
padding: $dropdown-item-padding-y $dropdown-item-padding-x;
|
||||
clear: both;
|
||||
font-weight: $font-weight-normal;
|
||||
color: $dropdown-link-color !important;
|
||||
text-align: inherit; // For `<button>`s
|
||||
white-space: nowrap; // prevent links from randomly breaking onto new lines
|
||||
background: none; // For `<button>`s
|
||||
border: 0; // For `<button>`s
|
||||
.navbar-dark .navbar-nav .dropdown-menu .nav-link {
|
||||
display: block;
|
||||
width: 100%; // For `<button>`s
|
||||
padding: $dropdown-item-padding-y $dropdown-item-padding-x;
|
||||
clear: both;
|
||||
font-weight: $font-weight-normal;
|
||||
color: $dropdown-link-color !important;
|
||||
text-align: inherit; // For `<button>`s
|
||||
white-space: nowrap; // prevent links from randomly breaking onto new lines
|
||||
background: none; // For `<button>`s
|
||||
border: 0; // For `<button>`s
|
||||
|
||||
@include hover-focus {
|
||||
color: $dropdown-link-hover-color !important;
|
||||
text-decoration: none;
|
||||
background-color: $dropdown-link-hover-bg;
|
||||
}
|
||||
@include hover-focus {
|
||||
color: $dropdown-link-hover-color !important;
|
||||
text-decoration: none;
|
||||
background-color: $dropdown-link-hover-bg;
|
||||
}
|
||||
|
||||
&.active,
|
||||
&:active {
|
||||
color: $dropdown-link-active-color !important;
|
||||
text-decoration: none;
|
||||
background-color: $dropdown-link-active-bg;
|
||||
}
|
||||
&.active,
|
||||
&:active {
|
||||
color: $dropdown-link-active-color !important;
|
||||
text-decoration: none;
|
||||
background-color: $dropdown-link-active-bg;
|
||||
}
|
||||
|
||||
&.disabled,
|
||||
&:disabled {
|
||||
color: $dropdown-link-disabled-color !important;
|
||||
background-color: transparent;
|
||||
// Remove CSS gradients if they're enabled
|
||||
@if $enable-gradients {
|
||||
background-image: none;
|
||||
}
|
||||
}
|
||||
&.disabled,
|
||||
&:disabled {
|
||||
color: $dropdown-link-disabled-color !important;
|
||||
background-color: transparent;
|
||||
|
||||
// Remove CSS gradients if they're enabled
|
||||
@if $enable-gradients {
|
||||
background-image: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-light .navbar-brand a {
|
||||
color: $navbar-light-active-color;
|
||||
color: $navbar-light-active-color;
|
||||
|
||||
@include hover-focus {
|
||||
color: $navbar-light-active-color;
|
||||
}
|
||||
@include hover-focus {
|
||||
color: $navbar-light-active-color;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-dark .navbar-brand a {
|
||||
color: $navbar-dark-active-color;
|
||||
color: $navbar-dark-active-color;
|
||||
|
||||
@include hover-focus {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
@include hover-focus {
|
||||
color: $navbar-dark-active-color;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar h1 {
|
||||
font-weight: $font-weight-normal;
|
||||
}
|
||||
|
|
|
@ -2,3 +2,15 @@
|
|||
.woocommerce-input-wrapper {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
// Woocommerce product gallery slider width fix
|
||||
figure.woocommerce-product-gallery__wrapper {
|
||||
max-width: inherit !important;
|
||||
}
|
||||
|
||||
// Fix coupon code input width
|
||||
@media(min-width: 768px) {
|
||||
#coupon_code.input-text {
|
||||
width: 110px !important;
|
||||
}
|
||||
}
|
||||
|
|
47
search.php
47
search.php
|
@ -1,13 +1,16 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying search results pages.
|
||||
* The template for displaying search results pages
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
get_header();
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
|
||||
?>
|
||||
|
||||
|
@ -25,27 +28,32 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
<?php if ( have_posts() ) : ?>
|
||||
|
||||
<header class="page-header">
|
||||
|
||||
<h1 class="page-title"><?php printf(
|
||||
/* translators:*/
|
||||
esc_html__( 'Search Results for: %s', 'understrap' ),
|
||||
'<span>' . get_search_query() . '</span>' ); ?></h1>
|
||||
|
||||
<h1 class="page-title">
|
||||
<?php
|
||||
printf(
|
||||
/* translators: %s: query term */
|
||||
esc_html__( 'Search Results for: %s', 'understrap' ),
|
||||
'<span>' . get_search_query() . '</span>'
|
||||
);
|
||||
?>
|
||||
</h1>
|
||||
|
||||
</header><!-- .page-header -->
|
||||
|
||||
<?php /* Start the Loop */ ?>
|
||||
<?php while ( have_posts() ) : the_post(); ?>
|
||||
<?php
|
||||
while ( have_posts() ) :
|
||||
the_post();
|
||||
|
||||
<?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' );
|
||||
?>
|
||||
|
||||
<?php endwhile; ?>
|
||||
endwhile;
|
||||
?>
|
||||
|
||||
<?php else : ?>
|
||||
|
||||
|
@ -58,13 +66,14 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
<!-- The pagination component -->
|
||||
<?php understrap_pagination(); ?>
|
||||
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
<!-- Do the right sidebar check -->
|
||||
<?php get_template_part( 'global-templates/right-sidebar-check' ); ?>
|
||||
|
||||
</div><!-- .row -->
|
||||
</div><!-- .row -->
|
||||
|
||||
</div><!-- Container end -->
|
||||
</div><!-- #content -->
|
||||
|
||||
</div><!-- Wrapper end -->
|
||||
</div><!-- #search-wrapper -->
|
||||
|
||||
<?php get_footer(); ?>
|
||||
<?php
|
||||
get_footer();
|
||||
|
|
|
@ -1,19 +1,22 @@
|
|||
<?php
|
||||
/**
|
||||
* The template for displaying search forms in Underscores.me
|
||||
* The template for displaying search forms
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<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>
|
||||
<label class="sr-only" 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 …', 'understrap' ); ?>" value="<?php the_search_query(); ?>">
|
||||
<span class="input-group-append">
|
||||
<input class="submit btn btn-primary" id="searchsubmit" name="submit" type="submit"
|
||||
value="<?php esc_attr_e( 'Search', 'understrap' ); ?>">
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
<?php
|
||||
/**
|
||||
* Sidebar setup for footer full.
|
||||
* Sidebar setup for footer full
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
|
||||
?>
|
||||
|
||||
|
@ -27,4 +30,5 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
</div><!-- #wrapper-footer-full -->
|
||||
|
||||
<?php endif; ?>
|
||||
<?php
|
||||
endif;
|
||||
|
|
|
@ -1,44 +1,47 @@
|
|||
<?php
|
||||
/**
|
||||
* Sidebar - hero setup.
|
||||
* Sidebar - hero setup
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
?>
|
||||
|
||||
<?php if ( is_active_sidebar( 'hero' ) ) : ?>
|
||||
|
||||
<!-- ******************* The Hero Widget Area ******************* -->
|
||||
|
||||
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
|
||||
<div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
|
||||
|
||||
<div class="carousel-inner" role="listbox">
|
||||
<div class="carousel-inner" role="listbox">
|
||||
|
||||
<?php dynamic_sidebar( 'hero' ); ?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
|
||||
|
||||
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
|
||||
|
||||
<span class="sr-only"><?php esc_html_e( 'Previous', 'understrap' ); ?></span>
|
||||
|
||||
</a>
|
||||
|
||||
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
|
||||
|
||||
<span class="carousel-control-next-icon" aria-hidden="true"></span>
|
||||
|
||||
<span class="sr-only"><?php esc_html_e( 'Next', 'understrap' ); ?></span>
|
||||
|
||||
</a>
|
||||
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
|
||||
|
||||
</div><!-- .carousel -->
|
||||
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
|
||||
|
||||
<script>
|
||||
jQuery( ".carousel-item" ).first().addClass( "active" );
|
||||
</script>
|
||||
<span class="sr-only"><?php esc_html_e( 'Previous', 'understrap' ); ?></span>
|
||||
|
||||
<?php endif; ?>
|
||||
</a>
|
||||
|
||||
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
|
||||
|
||||
<span class="carousel-control-next-icon" aria-hidden="true"></span>
|
||||
|
||||
<span class="sr-only"><?php esc_html_e( 'Next', 'understrap' ); ?></span>
|
||||
|
||||
</a>
|
||||
|
||||
</div><!-- .carousel -->
|
||||
|
||||
<script>
|
||||
jQuery( ".carousel-item" ).first().addClass( "active" );
|
||||
</script>
|
||||
|
||||
<?php
|
||||
endif;
|
||||
|
|
|
@ -1,16 +1,15 @@
|
|||
<?php
|
||||
/**
|
||||
* Sidebar - hero canvas setup.
|
||||
* Sidebar - The Hero Canvas Widget Area
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
?>
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
<?php if ( is_active_sidebar( 'herocanvas' ) ) : ?>
|
||||
if ( is_active_sidebar( 'herocanvas' ) ) {
|
||||
|
||||
<!-- ******************* The Hero Canvas Widget Area ******************* -->
|
||||
dynamic_sidebar( 'herocanvas' );
|
||||
|
||||
<?php dynamic_sidebar( 'herocanvas' ); ?>
|
||||
|
||||
<?php endif; ?>
|
||||
}
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
<?php
|
||||
/**
|
||||
* The sidebar containing the main widget area.
|
||||
* The sidebar containing the main widget area
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! is_active_sidebar( 'left-sidebar' ) ) {
|
||||
return;
|
||||
}
|
||||
|
@ -14,10 +17,10 @@ $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
|||
?>
|
||||
|
||||
<?php if ( 'both' === $sidebar_pos ) : ?>
|
||||
<div class="col-md-3 widget-area" id="left-sidebar" role="complementary">
|
||||
<?php else : ?>
|
||||
<div class="col-md-4 widget-area" id="left-sidebar" role="complementary">
|
||||
<?php endif; ?>
|
||||
<div class="col-md-3 widget-area" id="left-sidebar" role="complementary">
|
||||
<?php else : ?>
|
||||
<div class="col-md-4 widget-area" id="left-sidebar" role="complementary">
|
||||
<?php endif; ?>
|
||||
<?php dynamic_sidebar( 'left-sidebar' ); ?>
|
||||
|
||||
</div><!-- #left-sidebar -->
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
<?php
|
||||
/**
|
||||
* The right sidebar containing the main widget area.
|
||||
* The right sidebar containing the main widget area
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! is_active_sidebar( 'right-sidebar' ) ) {
|
||||
return;
|
||||
}
|
||||
|
@ -14,10 +17,10 @@ $sidebar_pos = get_theme_mod( 'understrap_sidebar_position' );
|
|||
?>
|
||||
|
||||
<?php if ( 'both' === $sidebar_pos ) : ?>
|
||||
<div class="col-md-3 widget-area" id="right-sidebar" role="complementary">
|
||||
<?php else : ?>
|
||||
<div class="col-md-4 widget-area" id="right-sidebar" role="complementary">
|
||||
<?php endif; ?>
|
||||
<div class="col-md-3 widget-area" id="right-sidebar" role="complementary">
|
||||
<?php else : ?>
|
||||
<div class="col-md-4 widget-area" id="right-sidebar" role="complementary">
|
||||
<?php endif; ?>
|
||||
<?php dynamic_sidebar( 'right-sidebar' ); ?>
|
||||
|
||||
</div><!-- #right-sidebar -->
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
<?php
|
||||
/**
|
||||
* Static hero sidebar setup.
|
||||
* Static hero sidebar setup
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
$container = get_theme_mod( 'understrap_container_type' );
|
||||
?>
|
||||
|
||||
<?php if ( is_active_sidebar( 'statichero' ) ) : ?>
|
||||
|
@ -27,4 +29,5 @@ $container = get_theme_mod( 'understrap_container_type' );
|
|||
|
||||
</div><!-- #wrapper-static-hero -->
|
||||
|
||||
<?php endif; ?>
|
||||
<?php
|
||||
endif;
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
<?php
|
||||
/**
|
||||
* The sidebar containing the main widget area
|
||||
*
|
||||
* @package understrap
|
||||
*/
|
||||
|
||||
// Exit if accessed directly.
|
||||
defined( 'ABSPATH' ) || exit;
|
||||
|
||||
if ( ! is_active_sidebar( 'sidebar-1' ) ) {
|
||||
return;
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="col-md-4 widget-area" id="secondary" role="complementary">
|
||||
|
||||
<?php dynamic_sidebar( 'sidebar-1' ); ?>
|
||||
|
||||
</div><!-- #secondary -->
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue