├── .github ├── dependabot.yml └── stale.yml ├── 404.php ├── 500.php ├── LICENSE ├── archive.php ├── assets ├── css │ ├── default-width.css │ ├── default-width.css.map │ ├── editor-style.css │ ├── editor-style.css.map │ ├── narrow-width.css │ ├── narrow-width.css.map │ ├── print.css │ ├── print.css.map │ ├── wide-width.css │ └── wide-width.css.map ├── font │ ├── lato │ │ ├── lato-v13-latin-300.eot │ │ ├── lato-v13-latin-300.svg │ │ ├── lato-v13-latin-300.woff │ │ ├── lato-v13-latin-300.woff2 │ │ ├── lato-v13-latin-300italic.eot │ │ ├── lato-v13-latin-300italic.svg │ │ ├── lato-v13-latin-300italic.woff │ │ ├── lato-v13-latin-300italic.woff2 │ │ ├── lato-v13-latin-700.eot │ │ ├── lato-v13-latin-700.svg │ │ ├── lato-v13-latin-700.woff │ │ ├── lato-v13-latin-700.woff2 │ │ ├── lato-v13-latin-700italic.eot │ │ ├── lato-v13-latin-700italic.svg │ │ ├── lato-v13-latin-700italic.woff │ │ └── lato-v13-latin-700italic.woff2 │ ├── merriweather │ │ ├── merriweather-v15-latin-300.eot │ │ ├── merriweather-v15-latin-300.svg │ │ ├── merriweather-v15-latin-300.woff │ │ ├── merriweather-v15-latin-300.woff2 │ │ ├── merriweather-v15-latin-300italic.eot │ │ ├── merriweather-v15-latin-300italic.svg │ │ ├── merriweather-v15-latin-300italic.woff │ │ ├── merriweather-v15-latin-300italic.woff2 │ │ ├── merriweather-v15-latin-700.eot │ │ ├── merriweather-v15-latin-700.svg │ │ ├── merriweather-v15-latin-700.woff │ │ ├── merriweather-v15-latin-700.woff2 │ │ ├── merriweather-v15-latin-700italic.eot │ │ ├── merriweather-v15-latin-700italic.svg │ │ ├── merriweather-v15-latin-700italic.woff │ │ └── merriweather-v15-latin-700italic.woff2 │ └── openwebicons │ │ ├── openwebicons.eot │ │ ├── openwebicons.svg │ │ ├── openwebicons.ttf │ │ ├── openwebicons.woff │ │ └── openwebicons.woff2 ├── images │ ├── beach.jpeg │ ├── lights.jpeg │ └── sea.jpeg └── js │ ├── block-editor.js │ ├── navigation.js │ └── share.js ├── comments.php ├── composer.json ├── footer.php ├── functions.php ├── header.php ├── image.php ├── includes ├── compat.php ├── customizer.php ├── featured-image.php ├── feed.php ├── semantics.php ├── template-functions.php ├── webactions.php └── widgets.php ├── index.php ├── integrations ├── activitypub.php ├── post-kinds.php └── syndication-links.php ├── languages ├── autonomie.pot ├── de_DE.mo ├── de_DE.po └── nl_NL.po ├── offline.php ├── page-now.php ├── page.php ├── readme.txt ├── screenshot.png ├── sidebar.php ├── single.php ├── style.css ├── style.css.map ├── template-parts ├── entry-author.php ├── entry-footer.php ├── entry-header.php ├── entry-nav.php ├── entry-share.php ├── entry-taxonomy.php ├── page-banner-author.php └── page-banner.php ├── templates ├── content-aside.php ├── content-audio.php ├── content-chat.php ├── content-gallery.php ├── content-image.php ├── content-link.php ├── content-page.php ├── content-quote.php ├── content-single.php ├── content-status.php ├── content-video.php └── content.php └── widgets ├── class-autonomie-author-widget.php └── class-autonomie-taxonomy-widget.php /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "composer" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "daily" 12 | - package-ecosystem: "npm" # See documentation for possible values 13 | directory: "/" # Location of package manifests 14 | schedule: 15 | interval: "daily" 16 | -------------------------------------------------------------------------------- /.github/stale.yml: -------------------------------------------------------------------------------- 1 | # Number of days of inactivity before an issue becomes stale 2 | daysUntilStale: 120 3 | # Number of days of inactivity before a stale issue is closed 4 | daysUntilClose: 7 5 | # Issues with these labels will never be considered stale 6 | exemptLabels: 7 | - pinned 8 | - security 9 | # Label to use when marking an issue as stale 10 | staleLabel: wontfix 11 | # Comment to post when marking an issue as stale. Set to `false` to disable 12 | markComment: > 13 | This issue has been automatically marked as stale because it has not had 14 | recent activity. It will be closed if no further activity occurs. Thank you 15 | for your contributions. 16 | # Comment to post when closing a stale issue. Set to `false` to disable 17 | closeComment: false 18 | -------------------------------------------------------------------------------- /404.php: -------------------------------------------------------------------------------- 1 | 10 | 11 |
> 12 | 13 |
14 |
15 |

16 |
17 | 18 |
19 |

20 | 21 | 22 | 23 | 24 | 25 |
26 |

27 |
    28 | 'count', 'order' => 'DESC', 'show_count' => 1, 'title_li' => '', 'number' => 10 ) ); ?> 29 |
30 |
31 | 32 | ' . sprintf( __( 'Try looking in the monthly archives. %1$s', 'autonomie' ), convert_smilies( ':)' ) ) . '

'; 35 | the_widget( 'WP_Widget_Archives', 'dropdown=1', "after_title=$archive_content" ); 36 | ?> 37 | 38 | 39 | 40 |
41 |
42 | 43 |
44 | 45 | 46 | -------------------------------------------------------------------------------- /500.php: -------------------------------------------------------------------------------- 1 | 10 | 11 |
> 12 | 13 |
14 |
15 |

16 |
17 | 18 |
19 |

20 |

21 |
22 |
23 | 24 |
25 | 26 | 27 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Matthias Pfefferle 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /archive.php: -------------------------------------------------------------------------------- 1 | 15 | 16 |
> 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
40 |
41 |

42 |
43 | 44 |
45 |

46 | 47 |
48 |
49 | 50 | 51 | 52 |
53 | 54 | 55 | -------------------------------------------------------------------------------- /assets/css/default-width.css: -------------------------------------------------------------------------------- 1 | .site-navigation,.site-header .site-branding,.site-header .page-banner #page-title,.site-header .page-banner #page-description,.site-header .page-banner #page-meta{width:700px}.page-banner .avatar{width:120px;height:120px}.entry-content>*,.entry-summary>*,.entry-content>form,.entry-content>div,.entry-header,.entry-footer>*,.entry-reaction,#comments,#nav-above,#nav-below,.reaction-list,.wp-block-quote.is-style-large{display:block;max-width:700px;margin:1.2em auto;box-sizing:border-box}.entry-content .wp-block-gallery,.entry-content .wp-block-columns,.entry-content .wp-block-media-text,.entry-summary .wp-block-gallery,.entry-summary .wp-block-columns,.entry-summary .wp-block-media-text{display:flex}.entry-footer .author{width:780px;max-width:780px;margin:70px auto}#sidebar{width:100%}#sidebar aside{margin:50px 50px}#sidebar #secondary{display:inline-block;float:left;width:50%}#sidebar #tertiary{display:inline-block;float:left;width:50%}#sidebar #quaternary{display:inline-block;float:left;width:50%} 2 | 3 | /*# sourceMappingURL=default-width.css.map */ -------------------------------------------------------------------------------- /assets/css/default-width.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/responsive_default.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_vars.scss"],"names":[],"mappings":"AAGA,oKAKC,MCiCe,MD9BhB,qBACC,YACA,aAGD,qMAYC,cACA,UCYe,MDXf,kBACA,sBAKA,4MAGC,aAIF,sBACC,YACA,gBACA,iBAGD,SACC,WAEA,eACC,iBAGD,oBACC,qBACA,WACA,UAGD,mBACC,qBACA,WACA,UAGD,qBACC,qBACA,WACA","file":"default-width.css"} -------------------------------------------------------------------------------- /assets/css/editor-style.css: -------------------------------------------------------------------------------- 1 | body .editor-styles-wrapper{/*! normalize.css v3.0.2 | MIT License | git.io/normalize */}body .editor-styles-wrapper .wp-block{max-width:700px}body .editor-styles-wrapper .wp-block[data-align=wide]{max-width:900px}body .editor-styles-wrapper .wp-block[data-align=full]{max-width:none}body .editor-styles-wrapper html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body .editor-styles-wrapper body{margin:0}body .editor-styles-wrapper article,body .editor-styles-wrapper aside,body .editor-styles-wrapper details,body .editor-styles-wrapper figcaption,body .editor-styles-wrapper figure,body .editor-styles-wrapper footer,body .editor-styles-wrapper header,body .editor-styles-wrapper hgroup,body .editor-styles-wrapper main,body .editor-styles-wrapper menu,body .editor-styles-wrapper nav,body .editor-styles-wrapper section,body .editor-styles-wrapper summary{display:block}body .editor-styles-wrapper audio,body .editor-styles-wrapper canvas,body .editor-styles-wrapper progress,body .editor-styles-wrapper video{display:inline-block;vertical-align:baseline}body .editor-styles-wrapper audio:not([controls]){display:none;height:0}body .editor-styles-wrapper [hidden],body .editor-styles-wrapper template{display:none}body .editor-styles-wrapper a{background-color:rgba(0,0,0,0)}body .editor-styles-wrapper a:active,body .editor-styles-wrapper a:hover{outline:0}body .editor-styles-wrapper abbr[title]{border-bottom:1px dotted}body .editor-styles-wrapper b,body .editor-styles-wrapper strong{font-weight:bold}body .editor-styles-wrapper dfn{font-style:italic}body .editor-styles-wrapper h1{font-size:2em;margin:.67em 0}body .editor-styles-wrapper mark{background:#ff0;color:#000}body .editor-styles-wrapper small{font-size:80%}body .editor-styles-wrapper sub,body .editor-styles-wrapper sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}body .editor-styles-wrapper sup{top:-0.5em}body .editor-styles-wrapper sub{bottom:-0.25em}body .editor-styles-wrapper img{border:0}body .editor-styles-wrapper svg:not(:root){overflow:hidden}body .editor-styles-wrapper figure{margin:1em 40px}body .editor-styles-wrapper hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}body .editor-styles-wrapper pre{overflow:auto}body .editor-styles-wrapper code,body .editor-styles-wrapper kbd,body .editor-styles-wrapper pre,body .editor-styles-wrapper samp{font-family:monospace,monospace;font-size:1em}body .editor-styles-wrapper button,body .editor-styles-wrapper input,body .editor-styles-wrapper optgroup,body .editor-styles-wrapper select,body .editor-styles-wrapper textarea{color:inherit;font:inherit;margin:0}body .editor-styles-wrapper button{overflow:visible}body .editor-styles-wrapper button,body .editor-styles-wrapper select{text-transform:none}body .editor-styles-wrapper button,body .editor-styles-wrapper html input[type=button],body .editor-styles-wrapper input[type=reset],body .editor-styles-wrapper input[type=submit]{-webkit-appearance:button;cursor:pointer}body .editor-styles-wrapper button[disabled],body .editor-styles-wrapper html input[disabled]{cursor:default}body .editor-styles-wrapper button::-moz-focus-inner,body .editor-styles-wrapper input::-moz-focus-inner{border:0;padding:0}body .editor-styles-wrapper input{line-height:normal}body .editor-styles-wrapper input[type=checkbox],body .editor-styles-wrapper input[type=radio]{box-sizing:border-box;padding:0}body .editor-styles-wrapper input[type=number]::-webkit-inner-spin-button,body .editor-styles-wrapper input[type=number]::-webkit-outer-spin-button{height:auto}body .editor-styles-wrapper input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}body .editor-styles-wrapper input[type=search]::-webkit-search-cancel-button,body .editor-styles-wrapper input[type=search]::-webkit-search-decoration{-webkit-appearance:none}body .editor-styles-wrapper fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}body .editor-styles-wrapper legend{border:0;padding:0}body .editor-styles-wrapper textarea{overflow:auto}body .editor-styles-wrapper optgroup{font-weight:bold}body .editor-styles-wrapper table{border-collapse:collapse;border-spacing:0}body .editor-styles-wrapper td,body .editor-styles-wrapper th{padding:0}body .editor-styles-wrapper body{background-color:#fff;background-color:var(--color-background);color:#373d3f;color:var(--color-dark-gray);font-family:Lato,sans-serif;font-weight:400;word-wrap:break-word}body .editor-styles-wrapper *,body .editor-styles-wrapper ::before,body .editor-styles-wrapper ::after{box-sizing:inherit}body .editor-styles-wrapper address{font-style:normal}body .editor-styles-wrapper a{color:#373d3f;color:var(--color-dark-gray)}body .editor-styles-wrapper svg{fill:#373d3f;fill:var(--color-dark-gray)}body .editor-styles-wrapper a:hover{text-decoration:none}body .editor-styles-wrapper abbr{font-variant:small-caps}body .editor-styles-wrapper abbr[title]{border-bottom:1px dotted #4f575a;border-bottom-color:var(--color-gray);cursor:help}body .editor-styles-wrapper blockquote,body .editor-styles-wrapper figure{color:#4f575a;color:var(--color-gray);font-size:1em;font-style:italic;position:relative;line-height:1.5;font-family:"Merriweather",serif}body .editor-styles-wrapper blockquote small,body .editor-styles-wrapper blockquote figcaption,body .editor-styles-wrapper blockquote cite,body .editor-styles-wrapper figure small,body .editor-styles-wrapper figure figcaption,body .editor-styles-wrapper figure cite{color:#4f575a;color:var(--color-gray);display:block;font-size:.7em;font-style:normal;font-weight:normal}body .editor-styles-wrapper blockquote cite:before,body .editor-styles-wrapper blockquote small:before,body .editor-styles-wrapper figure cite:before,body .editor-styles-wrapper figure small:before{content:"— "}body .editor-styles-wrapper blockquote small,body .editor-styles-wrapper blockquote figcaption,body .editor-styles-wrapper blockquote cite{text-align:left}body .editor-styles-wrapper figure,body .editor-styles-wrapper .wp-block-pullquote{padding:0;margin:0}body .editor-styles-wrapper figure small,body .editor-styles-wrapper figure figcaption,body .editor-styles-wrapper figure cite,body .editor-styles-wrapper .wp-block-pullquote small,body .editor-styles-wrapper .wp-block-pullquote figcaption,body .editor-styles-wrapper .wp-block-pullquote cite{text-align:right}body .editor-styles-wrapper figure blockquote,body .editor-styles-wrapper .wp-block-pullquote blockquote{hyphens:auto;word-wrap:break-word;border:none;text-align:center}body .editor-styles-wrapper iframe{border:none;border-spacing:0}body .editor-styles-wrapper blockquote{border:0;border-left:3px solid #d1d5d7;margin:0;padding-left:30px;line-height:1.8}body .editor-styles-wrapper code{background-color:var(--color-dark-gray);color:var(--color-white);border-radius:.3em;padding:4px 5px 5px}body .editor-styles-wrapper code a{color:var(--color-white)}body .editor-styles-wrapper ins{background:#fff9c0;text-decoration:none}body .editor-styles-wrapper h1,body .editor-styles-wrapper h2,body .editor-styles-wrapper h3,body .editor-styles-wrapper h4,body .editor-styles-wrapper h5,body .editor-styles-wrapper h6{font-family:"Merriweather",serif;font-weight:100;margin-bottom:0;line-height:1.2em}body .editor-styles-wrapper h1{font-size:2.2em}body .editor-styles-wrapper h2{font-size:2em}body .editor-styles-wrapper h3{font-size:1.8em}body .editor-styles-wrapper h4{font-size:1.6em}body .editor-styles-wrapper h5{font-size:1.4em}body .editor-styles-wrapper h6{font-size:1.2em}body .editor-styles-wrapper hr{display:block;width:200px;margin:60px auto !important;border:0;border-top:1px solid #d1d5d7;text-align:center}body .editor-styles-wrapper pre{margin-top:50px;margin-bottom:50px;background-color:#000;color:#fff;display:block;padding:50px;white-space:pre-wrap;word-wrap:break-word}body .editor-styles-wrapper pre code{background-color:inherit;color:inherit;border-radius:inherit;padding:0;white-space:inherit}body .editor-styles-wrapper h1,body .editor-styles-wrapper h2,body .editor-styles-wrapper h3,body .editor-styles-wrapper h4,body .editor-styles-wrapper h5,body .editor-styles-wrapper h6,body .editor-styles-wrapper caption,body .editor-styles-wrapper figcaption{text-wrap:balance}body .editor-styles-wrapper p,body .editor-styles-wrapper ul,body .editor-styles-wrapper ol,body .editor-styles-wrapper blockquote{text-wrap:pretty}body .editor-styles-wrapper .single #primary article.has-full-width-featured-image,body .editor-styles-wrapper .page #primary article.has-full-width-featured-image{margin-top:0px}body .editor-styles-wrapper .has-full-width-featured-image .entry-header{margin:0;width:100%;max-width:100%;position:relative;height:75vh;max-height:75%;min-height:500px;margin-bottom:50px;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-title,body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-meta,body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-format{color:#fff}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-title a,body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-meta a,body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-format a{color:#fff}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-meta.post-format .entry-format::before{color:#fff}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-header-wrapper{position:absolute;left:0;bottom:0;width:100%;margin-bottom:50px}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-header-wrapper>*{margin:0 auto;width:700px}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .entry-header-wrapper .entry-meta{margin-top:15px}body .editor-styles-wrapper .has-full-width-featured-image .entry-header .avatar{border:2px solid #fff}body .editor-styles-wrapper #primary article:first-child{margin-top:50px}body .editor-styles-wrapper .home #primary article:after,body .editor-styles-wrapper .archive #primary article:after{content:"";border-top:1px solid #d1d5d7;width:200px;display:block;text-align:center;margin:0 auto;margin-top:100px}body .editor-styles-wrapper h1.entry-title,body .editor-styles-wrapper h2.entry-title,body .editor-styles-wrapper h3.entry-title,body .editor-styles-wrapper h4.entry-title{margin:0;padding:0;font-size:2em;line-height:1.2em}body .editor-styles-wrapper h1.entry-title a,body .editor-styles-wrapper h2.entry-title a,body .editor-styles-wrapper h3.entry-title a,body .editor-styles-wrapper h4.entry-title a{hyphens:auto;text-overflow:ellipsis;overflow:hidden;font-size:1em;line-height:1;text-decoration:none;color:#373d3f;color:var(--color-dark-gray)}body .editor-styles-wrapper h1.entry-title a:hover,body .editor-styles-wrapper h2.entry-title a:hover,body .editor-styles-wrapper h3.entry-title a:hover,body .editor-styles-wrapper h4.entry-title a:hover{text-decoration:underline}body .editor-styles-wrapper .format-quote .entry-content,body .editor-styles-wrapper .format-aside .entry-content,body .editor-styles-wrapper .format-status .entry-content{font-size:1.5em}body .editor-styles-wrapper .type-page h1.entry-title,body .editor-styles-wrapper .type-page h2.entry-title,body .editor-styles-wrapper .type-page h3.entry-title,body .editor-styles-wrapper .type-page h4.entry-title,body .editor-styles-wrapper .format-standard h1.entry-title,body .editor-styles-wrapper .format-standard h2.entry-title,body .editor-styles-wrapper .format-standard h3.entry-title,body .editor-styles-wrapper .format-standard h4.entry-title{font-size:3.5em}body .editor-styles-wrapper .entry-content,body .editor-styles-wrapper .entry-summary{color:#373d3f;color:var(--color-dark-gray);font-style:normal;font-size:1.2em;margin:0 auto}body .editor-styles-wrapper .entry-content .wp-block-cover-image,body .editor-styles-wrapper .entry-content .alignfull,body .editor-styles-wrapper .entry-summary .wp-block-cover-image,body .editor-styles-wrapper .entry-summary .alignfull{max-width:100%;width:100%}body .editor-styles-wrapper .entry-content .alignwide,body .editor-styles-wrapper .entry-summary .alignwide{width:auto;max-width:900px}body .editor-styles-wrapper .entry-content p.has-background,body .editor-styles-wrapper .entry-summary p.has-background{width:100%;max-width:100%;padding:30px calc((100% - 700px)/2);margin:0}body .editor-styles-wrapper .entry-content a,body .editor-styles-wrapper .entry-summary a{text-decoration:underline}@supports(text-decoration: underline #9bc53d){body .editor-styles-wrapper .entry-content a,body .editor-styles-wrapper .entry-summary a{text-decoration:underline #9bc53d;text-decoration:underline var(--color-android-green);text-decoration-thickness:3px;text-underline-offset:6px}}@supports(text-decoration: underline #9bc53d){body .editor-styles-wrapper .entry-content a:hover,body .editor-styles-wrapper .entry-summary a:hover{text-decoration:underline #fc0;text-decoration:underline var(--color-usc-gold);text-decoration-thickness:3px;text-underline-offset:6px}}body .editor-styles-wrapper .entry-actions{display:block}body .editor-styles-wrapper .entry-actions:before,body .editor-styles-wrapper .entry-actions:after{content:" ";display:table}body .editor-styles-wrapper .entry-actions:after{clear:both}body .editor-styles-wrapper #entry-share{display:inline-block;font-size:1em;font-family:"Lato",sans-serif;background-color:#fafafb;background-color:var(--color-background-gray);border:none;border-radius:3px;color:#373d3f;color:var(--color-dark-gray);line-height:inherit;padding:3px 7px;text-decoration:none;float:right}body .editor-styles-wrapper #entry-share:hover{background-color:#eef4e2;color:#40531e}body .editor-styles-wrapper #entry-share:before{display:inline-block;font:normal 1.1em "Dashicons";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;margin-right:0;position:relative;text-decoration:none;top:2px;vertical-align:text-middle;margin-right:5px;content:""}body .editor-styles-wrapper .page-link,body .editor-styles-wrapper .page-links{margin-bottom:1em}body .editor-styles-wrapper .entry-meta,body .editor-styles-wrapper .wp-caption-text,body .editor-styles-wrapper .gallery-caption,body .editor-styles-wrapper .page-link,body .editor-styles-wrapper .page-links{font-family:"Lato",sans-serif;clear:both;color:#4f575a;color:var(--color-gray);display:block}body .editor-styles-wrapper .entry-meta a,body .editor-styles-wrapper .wp-caption-text a,body .editor-styles-wrapper .gallery-caption a,body .editor-styles-wrapper .page-link a,body .editor-styles-wrapper .page-links a{color:#4f575a;color:var(--color-gray);text-decoration:none}body .editor-styles-wrapper .entry-meta a:hover,body .editor-styles-wrapper .wp-caption-text a:hover,body .editor-styles-wrapper .gallery-caption a:hover,body .editor-styles-wrapper .page-link a:hover,body .editor-styles-wrapper .page-links a:hover{text-decoration:underline}body .editor-styles-wrapper .entry-meta .avatar,body .editor-styles-wrapper .wp-caption-text .avatar,body .editor-styles-wrapper .gallery-caption .avatar,body .editor-styles-wrapper .page-link .avatar,body .editor-styles-wrapper .page-links .avatar{float:left;margin-right:10px}body .editor-styles-wrapper .entry-footer .author:before,body .editor-styles-wrapper .entry-footer .author:after{content:" ";display:table}body .editor-styles-wrapper .entry-footer .author:after{clear:both}body .editor-styles-wrapper .entry-meta{position:relative;margin-top:15px;margin-bottom:15px}body .editor-styles-wrapper .entry-meta.post-format{padding:0;margin:0;margin-bottom:10px}body .editor-styles-wrapper .entry-meta.post-format a,body .editor-styles-wrapper .entry-meta.post-format span,body .editor-styles-wrapper .entry-meta.post-format .entry-format:before{color:#b6bdbf;color:var(--color-lighter-gray);font-weight:bold;text-transform:lowercase}body .editor-styles-wrapper .entry-meta.post-format .entry-format:before{display:inline-block;font:normal 1.1em "Dashicons";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;isolation:isolate;margin-right:5px;position:relative;text-decoration:none;top:2px;vertical-align:text-middle;color:#b6bdbf;color:var(--color-lighter-gray)}body .editor-styles-wrapper .entry-meta .entry-format{line-height:1}body .editor-styles-wrapper .entry-meta address{font-size:1em;line-height:1.2;color:#373d3f;color:var(--color-dark-gray)}body .editor-styles-wrapper .entry-meta .entry-date,body .editor-styles-wrapper .entry-meta .entry-duration{font-size:.8em}body .editor-styles-wrapper .comments-link{font-size:1em;display:inline-block}body .editor-styles-wrapper .comments-link:before{display:inline-block;font:normal 1.1em "Dashicons";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;margin-right:0;position:relative;text-decoration:inherit;top:2px;vertical-align:text-middle;margin-right:5px;content:""}body .editor-styles-wrapper .tag-links,body .editor-styles-wrapper .cat-links{margin:10px 0;display:block}body .editor-styles-wrapper .tag-links ul,body .editor-styles-wrapper .cat-links ul{margin:0;padding:0}body .editor-styles-wrapper .tag-links li,body .editor-styles-wrapper .cat-links li{display:inline-block;margin:10px 8px 0 0;list-style-type:none;font-size:1.2em}body .editor-styles-wrapper .tag-links li a,body .editor-styles-wrapper .cat-links li a{font-size:1em;font-family:"Lato",sans-serif;background-color:#fafafb;background-color:var(--color-background-gray);border-radius:3px;color:#373d3f;color:var(--color-dark-gray);line-height:1;padding:5px 8px;text-decoration:none}body .editor-styles-wrapper .tag-links li a:hover,body .editor-styles-wrapper .cat-links li a:hover{background-color:#eef4e2;color:#40531e}body .editor-styles-wrapper .tag-links li a,body .editor-styles-wrapper .cat-links li a{font-size:.8em}body .editor-styles-wrapper #primary article{padding:0;margin-top:100px;position:relative}body .editor-styles-wrapper #primary article:before,body .editor-styles-wrapper #primary article:after{content:" ";display:table}body .editor-styles-wrapper #primary article:after{clear:both}body .editor-styles-wrapper #primary article .sep:first-of-type{display:none}body .editor-styles-wrapper #primary article.format-quote .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-aside .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-video .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-audio .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-image .post-format .entry-format:before,body .editor-styles-wrapper #primary article.format-photo .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-gallery .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-link .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-status .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.format-standard .post-format .entry-format:before{content:""}body .editor-styles-wrapper #primary article.type-page .post-format .entry-type-page:before{content:""}body .editor-styles-wrapper .edit-link{position:absolute;right:0;top:50px}body .editor-styles-wrapper .edit-link a{font-size:1em;font-family:"Lato",sans-serif;background-color:#fafafb;background-color:var(--color-background-gray);border-radius:3px;color:#373d3f;color:var(--color-dark-gray);line-height:1;padding:5px 8px;text-decoration:none}body .editor-styles-wrapper .edit-link a:hover{background-color:#eef4e2;color:#40531e}body .editor-styles-wrapper .more-link{display:block;font-size:.8em;color:#4f575a;color:var(--color-gray)}body .editor-styles-wrapper .entry-content .has-orioles-orange-background-color{background-color:#fa5b0f}body .editor-styles-wrapper .entry-content .has-orioles-orange-color{color:#fa5b0f}body .editor-styles-wrapper .entry-content .has-blue-background-color{background-color:#5fa7c5}body .editor-styles-wrapper .entry-content .has-blue-color{color:#5fa7c5}body .editor-styles-wrapper .entry-content .has-lighter-blue-background-color{background-color:#229fd8}body .editor-styles-wrapper .entry-content .has-lighter-blue-color{color:#229fd8}body .editor-styles-wrapper .entry-content .has-blue-jeans-background-color{background-color:#5bc0eb}body .editor-styles-wrapper .entry-content .has-blue-jeans-color{color:#5bc0eb}body .editor-styles-wrapper .entry-content .has-usc-gold-background-color{background-color:#fc0}body .editor-styles-wrapper .entry-content .has-usc-gold-color{color:#fc0}body .editor-styles-wrapper .entry-content .has-gargoyle-gas-background-color{background-color:#fde74c}body .editor-styles-wrapper .entry-content .has-gargoyle-gas-color{color:#fde74c}body .editor-styles-wrapper .entry-content .has-yellow-background-color{background-color:#fff9c0}body .editor-styles-wrapper .entry-content .has-yellow-color{color:#fff9c0}body .editor-styles-wrapper .entry-content .has-android-green-background-color{background-color:#9bc53d}body .editor-styles-wrapper .entry-content .has-android-green-color{color:#9bc53d}body .editor-styles-wrapper .entry-content .has-white-background-color{background-color:#fff;background-color:var(--color-white)}body .editor-styles-wrapper .entry-content .has-white-color{color:#fff;color:var(--color-white)}body .editor-styles-wrapper .entry-content .has-very-light-gray-background-color{background-color:#eee}body .editor-styles-wrapper .entry-content .has-very-light-gray-color{color:#eee}body .editor-styles-wrapper .entry-content .has-very-dark-gray-background-color{background-color:#444}body .editor-styles-wrapper .entry-content .has-very-dark-gray-color{color:#444}body .editor-styles-wrapper .sticky{color:inherit}body .editor-styles-wrapper .wp-block-footnotes{border-top:solid 1px #d3d3d3;margin-top:2em;padding-top:2em;font-size:.8em;padding-left:0;list-style-position:inside} 2 | 3 | /*# sourceMappingURL=editor-style.css.map */ -------------------------------------------------------------------------------- /assets/css/editor-style.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/editor-style.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_vars.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_normalize.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_base.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_post.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_mixins.scss"],"names":[],"mappings":"CAAA,yFAIC,sCACC,UCoCc,MDhCf,uDACC,UC8BW,MD1BZ,uDACC,eEPF,iCACC,uBACA,0BACA,8BAOD,iCACC,SAaD,ucAaC,cAQD,4IAIC,qBACA,wBAQD,kDACC,aACA,SAQD,0EAEC,aAUD,8BACC,+BAOD,yEAEC,UAUD,wCACC,yBAOD,iEAEC,iBAOD,gCACC,kBAQD,+BACC,cACA,eAOD,iCACC,gBACA,WAOD,kCACC,cAOD,gEAEC,cACA,cACA,kBACA,wBAGD,gCACC,WAGD,gCACC,eAUD,gCACC,SAOD,2CACC,gBAUD,mCACC,gBAOD,+BACC,4BACA,uBACA,SAOD,gCACC,cAOD,kIAIC,gCACA,cAkBD,kLAKC,cACA,aACA,SAOD,mCACC,iBAUD,sEAEC,oBAWD,oLAIC,0BACA,eAOD,8FAEC,eAOD,yGAEC,SACA,UAQD,kCACC,mBAWD,+FAEC,sBACA,UASD,oJAEC,YASD,+CACC,6BACA,4BACA,+BACA,uBASD,uJAEC,wBAOD,qCACC,wBACA,aACA,2BAQD,mCACC,SACA,UAOD,qCACC,cAQD,qCACC,iBAUD,kCACC,yBACA,iBAGD,8DAEC,UCzaD,iCACC,iBFkCO,KEjCP,yCACA,cACA,6BAEA,4BACA,gBACA,qBAGD,uGACC,mBAGD,oCACC,kBAGD,8BACC,MFjBW,QEkBX,6BAGD,gCACC,KFtBW,QEuBX,4BAGD,oCACC,qBAGD,iCACC,wBAEA,wCACC,iCACA,sCACA,YAIF,0EAEC,MFzCM,QE0CN,wBACA,cACA,kBACA,kBACA,gBACA,iCAEA,0QAGC,MFpDK,QEqDL,wBACA,cACA,eACA,kBACA,mBAKA,sMACC,aAMF,2IAGC,gBAIF,mFAEC,UACA,SAEA,qSAGC,iBAGD,yGACC,aACA,qBACA,YACA,kBAIF,mCACC,YACA,iBAGD,uCACC,SACA,8BACA,SACA,kBACA,gBAGD,iCACC,wCACA,yBACA,mBACA,oBAEA,mCACC,yBAIF,gCACC,WF3FQ,QE4FR,qBAGD,0LAMC,iCACA,gBACA,gBACA,kBAGD,+BACC,gBAGD,+BACC,cAGD,+BACC,gBAGD,+BACC,gBAGD,+BACC,gBAGD,+BACC,gBAGD,+BACC,cACA,YACA,4BACA,SACA,6BACA,kBAGD,gCACC,gBACA,mBACA,sBACA,WACA,cACA,aACA,qBACA,qBAEA,qCACC,yBACA,cACA,sBACA,UACA,oBAIF,qQACC,kBAGD,mIACC,iBClMC,oKACC,eAMF,yEACC,SACA,WACA,eACA,kBACA,YACA,eACA,iBACA,mBACA,8BACA,2BACA,yBACA,sBAEA,kQACC,MHUK,KGRL,wQACC,MHOI,KGHN,uHACC,MHEK,KGCN,+FACC,kBACA,OACA,SACA,WACA,mBAGD,iGACC,cACA,MHLa,MGQd,2GACC,gBAGD,iFACC,sBAKH,yDACC,gBAMC,qHACC,WACA,6BACA,YACA,cACA,kBACA,cACA,iBAKH,4KAIC,SACA,UAEA,cACA,kBAEA,oLACC,aACA,uBACA,gBACA,cACA,cACA,qBACA,MH5FU,QG6FV,6BAEA,4MACC,0BAMF,4KACC,gBAMD,wcAIC,gBAIF,sFAEC,MHvHW,QGwHX,6BACA,kBACA,gBACA,cAEA,8OAEC,eACA,WAGD,4GACC,WACA,UHhGW,MGmGZ,wHACC,WACA,eACA,oCACA,SAGD,0FACC,0BAEA,8CAHD,0FAIE,kCACA,qDACA,8BACA,2BAIA,8CADD,sGAEE,+BACA,gDACA,8BACA,2BAMJ,2CACC,cC7JA,mGAEC,YACA,cAGD,iDACC,WD2JF,yCACC,qBACA,cACA,8BACA,iBHxKiB,QGyKjB,8CACA,YACA,kBACA,MHlLW,QGmLX,6BACA,oBACA,gBACA,qBACA,YAEA,+CACC,iBHvKY,QGwKZ,MHzKW,QG4KZ,gDACC,qBACA,8BACA,mCACA,kCACA,kCACA,eACA,kBACA,qBACA,QACA,2BACA,iBACA,YAIF,+EAEC,kBAGD,iNAKC,8BACA,WACA,MHzNM,QG0NN,wBACA,cAEA,2NACC,MH9NK,QG+NL,wBACA,qBAGD,yPACC,0BAGD,yPACC,WACA,kBClOD,iHAEC,YACA,cAGD,wDACC,WDmOF,wCACC,kBAEA,gBACA,mBAEA,oDACC,UACA,SACA,mBAGD,wLAGC,MH9Pa,QG+Pb,gCACA,iBACA,yBAGD,yEACC,qBACA,8BACA,mCACA,kCACA,kCACA,kBACA,iBACA,kBACA,qBACA,QACA,2BACA,MHhRa,QGiRb,gCAGD,sDACC,cAGD,gDACC,cACA,gBACA,MH9RU,QG+RV,6BAGD,4GAEC,eAIF,2CACC,cACA,qBAEA,kDACC,qBACA,8BACA,mCACA,kCACA,kCACA,eACA,kBACA,wBACA,QACA,2BACA,iBACA,YAIF,8EAEC,cACA,cAEA,oFACC,SACA,UAGD,oFACC,qBACA,oBACA,qBACA,gBCtTD,wFACC,cACA,8BACA,iBJjBgB,QIkBhB,8CACA,kBACA,MJ1BU,QI2BV,6BACA,cACA,gBACA,qBAEA,oGACC,iBJdW,QIeX,MJhBU,QG4TX,wFACC,eAKH,6CACC,UACA,iBACA,kBC/UA,uGAEC,YACA,cAGD,mDACC,WD4UD,gEACC,aAGD,4FACC,YAGD,4FACC,YAGD,4FACC,YAGD,4FACC,YAGD,wLAEC,YAGD,8FACC,YAGD,2FACC,YAGD,6FACC,YAGD,+FACC,YAGD,4FACC,YAIF,uCACC,kBACA,QACA,SCxXA,yCACC,cACA,8BACA,iBJjBgB,QIkBhB,8CACA,kBACA,MJ1BU,QI2BV,6BACA,cACA,gBACA,qBAEA,+CACC,iBJdW,QIeX,MJhBU,QG+Xb,uCACC,cACA,eACA,MHnZM,QGoZN,wBAIA,gFACC,iBH/Xe,QGkYhB,qEACC,MHnYe,QGsYhB,sEACC,iBHzZK,QG4ZN,2DACC,MH7ZK,QGgaN,8EACC,iBH5Za,QG+Zd,mEACC,MHhaa,QGmad,4EACC,iBHraW,QGwaZ,iEACC,MHzaW,QG4aZ,0EACC,iBH9ZS,KGiaV,+DACC,MHlaS,KGqaV,8EACC,iBHraa,QGwad,mEACC,MHzaa,QG4ad,wEACC,iBH5aO,QG+aR,6DACC,MHhbO,QGmbR,+EACC,iBHnbc,QGsbf,oEACC,MHvbc,QG0bf,uEACC,iBH1bM,KG2bN,oCAGD,4DACC,MH/bM,KGgcN,yBAGD,iFACC,iBHncgB,KGscjB,sEACC,MHvcgB,KG0cjB,gFACC,iBH1ce,KG6chB,qEACC,MH9ce,KGkdjB,oCACC,cAID,gDACC,6BACA,eACA,gBACA,eACA,eACA","file":"editor-style.css"} -------------------------------------------------------------------------------- /assets/css/narrow-width.css: -------------------------------------------------------------------------------- 1 | html{font-size:1em}#sidebar,.site-header .site-branding,.site-header .page-banner #page-description,.site-header .page-banner #page-title,.site-header .page-banner #page-meta,.site-navigation,.has-full-width-featured-image .entry-header .entry-header-wrapper>*{width:90%}.page-banner .avatar{width:80px;height:80px}.page-branding.author #page-description{font-size:1.2em}.site-header .page-banner .page-branding.author #page-title{font-size:2em}.entry-footer .author .fn,.entry-footer .author .note,.entry-footer .author .subscribe{margin-left:inherit}.entry-content p.has-background,.entry-summary p.has-background{padding:30px 5%}.entry-footer .author{width:100%;max-width:100%}.alignright,.alignleft,.wp-block-image .alignright,.wp-block-image .alignleft,.wp-block-button.alignright,.wp-block-button.alignleft{float:none;clear:both;margin:1.2em auto}.entry-content>*,.entry-summary>*,.entry-content>form,.entry-content>div,.entry-header,.entry-footer>*,.entry-reaction,#comments,#nav-above,#nav-below,.reaction-list,.wp-block-quote.is-style-large{max-width:90%;margin:1.2em auto;box-sizing:border-box}.type-page h1.entry-title,.type-page h2.entry-title,.type-page h3.entry-title,.type-page h4.entry-title,.format-standard h1.entry-title,.format-standard h2.entry-title,.format-standard h3.entry-title,.format-standard h4.entry-title{font-size:3em}.entry-content>pre,.entry-content>table{max-width:100%}.entry-header .entry-title{font-size:2.5em}.site-header .page-branding{font-size:.8em}.site-header .search-field{width:100px}.page-header{width:100%}#nav-below .nav-previous{bottom:20px;z-index:1}#nav-below .nav-next{bottom:20px;z-index:1}.error404 .entry-content .widget,#sidebar #secondary,#sidebar #tertiary,#sidebar #quaternary{width:90%;clear:both}#sidebar aside{margin:50px 0}ul.children{padding-left:10px} 2 | 3 | /*# sourceMappingURL=narrow-width.css.map */ -------------------------------------------------------------------------------- /assets/css/narrow-width.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/responsive_narrow.scss"],"names":[],"mappings":"AAGA,KACC,cAGD,kPAOC,UAGD,qBACC,WACA,YAGD,wCACC,gBAGD,4DACC,cAGD,uFAGC,oBAKA,gEACC,gBAIF,sBACC,WACA,eAGD,qIAMC,WACA,WACA,kBAGD,qMAYC,cACA,kBACA,sBAKA,wOAIC,cAIF,wCAEC,eAGD,2BACC,gBAIA,4BACC,eAGD,2BACC,YAIF,aACC,WAIA,yBACC,YACA,UAGD,qBACC,YACA,UAIF,6FAIC,UACA,WAIA,eACC,cAIF,YACC","file":"narrow-width.css"} -------------------------------------------------------------------------------- /assets/css/print.css: -------------------------------------------------------------------------------- 1 | *,*:before,*:after,*:first-letter,*:first-line{background:rgba(0,0,0,0) !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre,blockquote{border:1px solid #4f575a;border-color:var(--color-gray);page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid} 2 | 3 | /*# sourceMappingURL=print.css.map */ -------------------------------------------------------------------------------- /assets/css/print.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/print.scss"],"names":[],"mappings":"AAGA,+CAKC,oCACA,sBAEA,2BACA,4BAGD,YAEC,0BAGD,cACC,4BAGD,kBACC,6BAQD,gDAEC,WAGD,eAEC,yBACA,+BACA,wBAQD,MACC,2BAGD,OAEC,wBAGD,IACC,0BAGD,QAGC,UACA,SAGD,MAEC","file":"print.css"} -------------------------------------------------------------------------------- /assets/css/wide-width.css: -------------------------------------------------------------------------------- 1 | #sidebar,.site-navigation,.site-header .site-branding,.site-header .page-banner #page-title,.site-header .page-banner #page-description,.has-full-width-featured-image .entry-header .entry-header-wrapper>*{width:900px}.entry-content .wp-block-image,.entry-content .entry-attachment{width:900px;max-width:900px}.entry-content .wp-block-image.alignfull{width:100%;max-width:100%}#sidebar{width:1300px;max-width:100%}#sidebar aside{margin:50px 50px}#sidebar #secondary{display:inline-block;float:left;width:33%}#sidebar #tertiary{display:inline-block;float:left;width:33%}#sidebar #quaternary{display:inline-block;float:left;width:33%}.entry-content>span{display:inline-block}.entry-content>object,.entry-content>embed,.entry-content>iframe,.entry-content>figure,.entry-content .wp-block-pullquote,.entry-summary>object,.entry-summary>embed,.entry-summary>iframe,.entry-summary>figure,.entry-summary .wp-block-pullquote{max-width:900px;box-sizing:border-box}.entry-content>object small,.entry-content>object figcaption,.entry-content>object cite,.entry-content>embed small,.entry-content>embed figcaption,.entry-content>embed cite,.entry-content>iframe small,.entry-content>iframe figcaption,.entry-content>iframe cite,.entry-content>figure small,.entry-content>figure figcaption,.entry-content>figure cite,.entry-content .wp-block-pullquote small,.entry-content .wp-block-pullquote figcaption,.entry-content .wp-block-pullquote cite,.entry-summary>object small,.entry-summary>object figcaption,.entry-summary>object cite,.entry-summary>embed small,.entry-summary>embed figcaption,.entry-summary>embed cite,.entry-summary>iframe small,.entry-summary>iframe figcaption,.entry-summary>iframe cite,.entry-summary>figure small,.entry-summary>figure figcaption,.entry-summary>figure cite,.entry-summary .wp-block-pullquote small,.entry-summary .wp-block-pullquote figcaption,.entry-summary .wp-block-pullquote cite{margin-right:100px}.entry-content>table,.entry-content>pre,.entry-summary>table,.entry-summary>pre{width:900px;max-width:900px;box-sizing:border-box}.wp-audio-shortcode{width:700px !important}figure.alignleft,.wp-block-cover.alignleft,.wp-block-gallery.alignleft,.wp-block-button.alignleft{float:left;margin-top:.3em;margin-right:2em;margin-left:calc(50% - 350px)}figure.alignright,.wp-block-cover.alignright,.wp-block-gallery.alignright,.wp-block-button.alignright{float:right;margin-top:.3em;margin-left:2em;margin-right:calc(50% - 350px)}p.alignleft{font-size:.9em;font-style:italic;float:left;color:#677275;color:var(--color-light-gray);padding:1em 0 1em 0;margin-right:2.5em;margin-left:calc(50% - 450px);width:400px;border-top:1px solid #677275;border-top-color:var(--color-light-gray);border-bottom:1px solid #677275;border-bottom-color:var(--color-light-gray)}p.alignright{font-size:.9em;font-style:italic;float:right;color:#677275;color:var(--color-light-gray);padding:1em 0 1em 0;margin-left:2.5em;margin-right:calc(50% - 450px);width:400px;border-top:1px solid #677275;border-top-color:var(--color-light-gray);border-bottom:1px solid #677275;border-bottom-color:var(--color-light-gray)}.alignright figcaption{display:block;height:68px;margin-top:0px;text-align:left;width:100px;margin-left:20px;word-break:break-word;word-wrap:break-word;float:right}.alignright figcaption:before{width:25%;margin-right:75%;border-top:1px solid #677275;border-top-color:var(--color-light-gray);display:block;content:"";margin-bottom:10px}.alignleft figcaption{display:block;height:68px;margin-top:0px;text-align:right;width:100px;margin-right:20px;word-break:break-word;word-wrap:break-word;float:left}.alignleft figcaption:before{width:25%;margin-left:75%;border-top:1px solid #677275;border-top-color:var(--color-light-gray);display:block;content:"";margin-bottom:10px}article.error404 .entry-content{width:900px;margin:auto auto} 2 | 3 | /*# sourceMappingURL=wide-width.css.map */ -------------------------------------------------------------------------------- /assets/css/wide-width.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/responsive_wide.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_vars.scss"],"names":[],"mappings":"AAGA,6MAMC,MC+BY,MD3BZ,gEAEC,MCyBW,MDxBX,UCwBW,MDrBZ,yCACC,WACA,eAIF,SACC,aACA,eAEA,eACC,iBAGD,oBACC,qBACA,WACA,UAGD,mBACC,qBACA,WACA,UAGD,qBACC,qBACA,WACA,UAIF,oBACC,qBAKA,oPAKC,UCvBW,MDwBX,sBAEA,w7BAGC,aC3BM,MDkCR,gFAEC,MCtCW,MDuCX,UCvCW,MDwCX,sBAIF,oBACC,uBAOA,kGACC,WACA,gBACA,iBACA,8BAGD,sGACC,YACA,gBACA,gBACA,+BAKD,YACC,eACA,kBACA,WACA,MC3GW,QD4GX,8BACA,oBACA,mBACA,8BACA,YACA,6BACA,yCACA,gCACA,4CAGD,aACC,eACA,kBACA,YACA,MC3HW,QD4HX,8BACA,oBACA,kBACA,+BACA,YACA,6BACA,yCACA,gCACA,4CAKD,uBACC,cACA,YACA,eACA,gBACA,MCzGO,MD0GP,iBACA,sBACA,qBACA,YAEA,8BACC,UACA,iBACA,6BACA,yCACA,cACA,WACA,mBAMF,sBACC,cACA,YACA,eACA,iBACA,MCjIO,MDkIP,kBACA,sBACA,qBACA,WAEA,6BACC,UACA,gBACA,6BACA,yCACA,cACA,WACA,mBAKH,gCACC,MCtJY,MDuJZ","file":"wide-width.css"} -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300.eot -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300.woff -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300.woff2 -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300italic.eot -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300italic.woff -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-300italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-300italic.woff2 -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700.eot -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700.woff -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700.woff2 -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700italic.eot -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700italic.woff -------------------------------------------------------------------------------- /assets/font/lato/lato-v13-latin-700italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/lato/lato-v13-latin-700italic.woff2 -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300.eot -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300.woff -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300.woff2 -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300italic.eot -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300italic.woff -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-300italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-300italic.woff2 -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700.eot -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700.woff -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700.woff2 -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700italic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700italic.eot -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700italic.woff -------------------------------------------------------------------------------- /assets/font/merriweather/merriweather-v15-latin-700italic.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/merriweather/merriweather-v15-latin-700italic.woff2 -------------------------------------------------------------------------------- /assets/font/openwebicons/openwebicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/openwebicons/openwebicons.eot -------------------------------------------------------------------------------- /assets/font/openwebicons/openwebicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/openwebicons/openwebicons.ttf -------------------------------------------------------------------------------- /assets/font/openwebicons/openwebicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/openwebicons/openwebicons.woff -------------------------------------------------------------------------------- /assets/font/openwebicons/openwebicons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/font/openwebicons/openwebicons.woff2 -------------------------------------------------------------------------------- /assets/images/beach.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/images/beach.jpeg -------------------------------------------------------------------------------- /assets/images/lights.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/images/lights.jpeg -------------------------------------------------------------------------------- /assets/images/sea.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/assets/images/sea.jpeg -------------------------------------------------------------------------------- /assets/js/block-editor.js: -------------------------------------------------------------------------------- 1 | "use strict" 2 | 3 | // Inspired by https://digitalapps.co/gutenberg-extending-featured-image-component/ 4 | 5 | const el = wp.element.createElement; 6 | const withState = wp.compose.withState; 7 | const withSelect = wp.data.withSelect; 8 | const withDispatch = wp.data.withDispatch; 9 | const { __ } = wp.i18n; 10 | 11 | wp.hooks.addFilter( 12 | 'editor.PostFeaturedImage', 13 | 'autonomie/full_width_featured_image', 14 | wrapPostFeaturedImage 15 | ); 16 | 17 | function wrapPostFeaturedImage( OriginalComponent ) { 18 | return function( props ) { 19 | return ( 20 | el( 21 | wp.element.Fragment, 22 | {}, 23 | '', 24 | el( 25 | OriginalComponent, 26 | props 27 | ), 28 | el( 29 | composedFullWidthFeaturedImageCheckBox 30 | ) 31 | ) 32 | ); 33 | } 34 | } 35 | 36 | class FullWidthFeaturedImageCheckBox extends React.Component { 37 | render() { 38 | const { 39 | meta, 40 | updateFullWidthFeaturedImage, 41 | } = this.props; 42 | 43 | return ( 44 | el( 45 | wp.components.CheckboxControl, 46 | { 47 | label: __( 'Use as post cover (full-width)', 'autonomie' ), 48 | checked: meta.full_width_featured_image, 49 | onChange: 50 | ( value ) => { 51 | this.setState( { isChecked: value } ); 52 | updateFullWidthFeaturedImage( value, meta ); 53 | } 54 | } 55 | ) 56 | ) 57 | } 58 | } 59 | 60 | const composedFullWidthFeaturedImageCheckBox = wp.compose.compose( [ 61 | withState( ( value ) => { isChecked: value } ), 62 | withSelect( ( select ) => { 63 | const currentMeta = select( 'core/editor' ).getCurrentPostAttribute( 'meta' ); 64 | const editedMeta = select( 'core/editor' ).getEditedPostAttribute( 'meta' ); 65 | return { 66 | meta: { ...currentMeta, ...editedMeta }, 67 | }; 68 | } ), 69 | withDispatch( ( dispatch ) => ( { 70 | updateFullWidthFeaturedImage( value, meta ) { 71 | meta = { 72 | ...meta, 73 | full_width_featured_image: value, 74 | }; 75 | dispatch( 'core/editor' ).editPost( { meta } ); 76 | }, 77 | } ) ), 78 | ] )( FullWidthFeaturedImageCheckBox ); 79 | -------------------------------------------------------------------------------- /assets/js/navigation.js: -------------------------------------------------------------------------------- 1 | /** 2 | * navigation.js 3 | * 4 | * Handles toggling the navigation menu for small screens and enables tab 5 | * support for dropdown menus. 6 | */ 7 | ( function() { 8 | var container, button, menu, links, subMenus; 9 | 10 | container = document.getElementById( 'site-navigation' ); 11 | 12 | if ( ! container ) { 13 | return; 14 | } 15 | 16 | button = container.getElementsByTagName( 'button' )[0]; 17 | if ( 'undefined' === typeof button ) { 18 | return; 19 | } 20 | 21 | menu = container.getElementsByTagName( 'ul' )[0]; 22 | 23 | // Hide menu toggle button if menu is empty and return early. 24 | if ( 'undefined' === typeof menu ) { 25 | button.style.display = 'none'; 26 | return; 27 | } 28 | 29 | menu.setAttribute( 'aria-expanded', 'false' ); 30 | if ( -1 === menu.className.indexOf( 'nav-menu' ) ) { 31 | menu.className += ' nav-menu'; 32 | } 33 | 34 | button.onclick = function() { 35 | if ( -1 !== container.className.indexOf( 'toggled' ) ) { 36 | container.className = container.className.replace( ' toggled', '' ); 37 | button.setAttribute( 'aria-expanded', 'false' ); 38 | menu.setAttribute( 'aria-expanded', 'false' ); 39 | } else { 40 | container.className += ' toggled'; 41 | button.setAttribute( 'aria-expanded', 'true' ); 42 | menu.setAttribute( 'aria-expanded', 'true' ); 43 | } 44 | }; 45 | 46 | // Get all the link elements within the menu. 47 | links = menu.getElementsByTagName( 'a' ); 48 | subMenus = menu.getElementsByTagName( 'ul' ); 49 | 50 | // Set menu items with submenus to aria-haspopup="true". 51 | for ( var i = 0, len = subMenus.length; i < len; i++ ) { 52 | subMenus[i].parentNode.setAttribute( 'aria-haspopup', 'true' ); 53 | } 54 | 55 | // Each time a menu link is focused or blurred, toggle focus. 56 | for ( i = 0, len = links.length; i < len; i++ ) { 57 | links[i].addEventListener( 'focus', toggleFocus, true ); 58 | links[i].addEventListener( 'blur', toggleFocus, true ); 59 | } 60 | 61 | /** 62 | * Sets or removes .focus class on an element. 63 | */ 64 | function toggleFocus() { 65 | var self = this; 66 | 67 | // Move up through the ancestors of the current link until we hit .nav-menu. 68 | while ( -1 === self.className.indexOf( 'nav-menu' ) ) { 69 | 70 | // On li elements toggle the class .focus. 71 | if ( 'li' === self.tagName.toLowerCase() ) { 72 | if ( -1 !== self.className.indexOf( 'focus' ) ) { 73 | self.className = self.className.replace( ' focus', '' ); 74 | } else { 75 | self.className += ' focus'; 76 | } 77 | } 78 | 79 | self = self.parentElement; 80 | } 81 | } 82 | } )(); 83 | -------------------------------------------------------------------------------- /assets/js/share.js: -------------------------------------------------------------------------------- 1 | ( function() { 2 | entry_share = document.getElementById('entry-share'); 3 | 4 | if ( ! entry_share ) { 5 | return false; 6 | } 7 | 8 | entry_share.onclick = function share() { 9 | if (navigator.share) { 10 | navigator.share( 11 | { 12 | title: document.querySelector('title').textContent, 13 | url: document.querySelector('link[rel="canonical"]').getAttribute('href') 14 | } 15 | ); 16 | } else { 17 | var citation_options = document.getElementById('share-options'); 18 | if (citation_options.style.display === 'none') { 19 | citation_options.style.display = 'block'; 20 | } else { 21 | citation_options.style.display = 'none'; 22 | } 23 | } 24 | return false; 25 | } 26 | })(); 27 | -------------------------------------------------------------------------------- /comments.php: -------------------------------------------------------------------------------- 1 | 14 |
15 | 16 |

17 |
18 | 27 | 28 | 29 | 30 | 31 |

32 | ' . get_the_title() . '' 37 | ); 38 | ?> 39 |

40 | 41 | 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?> 42 | 47 | 48 | 49 |
    50 | 'autonomie_comment', 'format' => '' ) ); 58 | ?> 59 |
60 | 61 | 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?> 62 | 67 | 68 | 69 | 70 | 71 | 75 |

76 | 77 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pfefferle/wordpress-autonomie", 3 | "description": "Pure Zen", 4 | "require": { 5 | "php": ">=5.6.0", 6 | "composer/installers": "~2.2" 7 | }, 8 | "type": "wordpress-theme", 9 | "license": "MIT", 10 | "authors": [ 11 | { 12 | "name": "Matthias Pfefferle", 13 | "homepage": "https://notiz.blog" 14 | } 15 | ], 16 | "extra": { 17 | "installer-name": "autonomie" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /footer.php: -------------------------------------------------------------------------------- 1 | 11 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /functions.php: -------------------------------------------------------------------------------- 1 | __( 'Blue', 'autonomie' ), 84 | 'slug' => 'blue', 85 | 'color' => '#0073aa', 86 | ), 87 | array( 88 | 'name' => __( 'Lighter blue', 'autonomie' ), 89 | 'slug' => 'lighter-blue', 90 | 'color' => '#229fd8', 91 | ), 92 | array( 93 | 'name' => __( 'Blue jeans', 'autonomie' ), 94 | 'slug' => 'blue-jeans', 95 | 'color' => '#5bc0eb', 96 | ), 97 | array( 98 | 'name' => __( 'Orioles orange', 'autonomie' ), 99 | 'slug' => 'orioles-orange', 100 | 'color' => '#fa5b0f', 101 | ), 102 | array( 103 | 'name' => __( 'USC gold', 'autonomie' ), 104 | 'slug' => 'usc-gold', 105 | 'color' => '#ffcc00', 106 | ), 107 | array( 108 | 'name' => __( 'Gargoyle gas', 'autonomie' ), 109 | 'slug' => 'gargoyle-gas', 110 | 'color' => '#fde74c', 111 | ), 112 | array( 113 | 'name' => __( 'Yellow', 'autonomie' ), 114 | 'slug' => 'yellow', 115 | 'color' => '#fff9c0', 116 | ), 117 | array( 118 | 'name' => __( 'Android green', 'autonomie' ), 119 | 'slug' => 'android-green', 120 | 'color' => '#9bc53d', 121 | ), 122 | array( 123 | 'name' => __( 'White', 'autonomie' ), 124 | 'slug' => 'white', 125 | 'color' => '#fff', 126 | ), 127 | array( 128 | 'name' => __( 'Very light gray', 'autonomie' ), 129 | 'slug' => 'very-light-gray', 130 | 'color' => '#eee', 131 | ), 132 | array( 133 | 'name' => __( 'Very dark gray', 'autonomie' ), 134 | 'slug' => 'very-dark-gray', 135 | 'color' => '#444', 136 | ), 137 | ) 138 | ); 139 | 140 | // This theme uses wp_nav_menu() in one location. 141 | register_nav_menus( 142 | array( 143 | 'primary' => __( 'Primary Menu', 'autonomie' ), 144 | ) 145 | ); 146 | 147 | // Add support for the Aside, Gallery Post Formats... 148 | add_theme_support( 149 | 'post-formats', 150 | array( 151 | 'aside', 152 | 'gallery', 153 | 'link', 154 | 'status', 155 | 'image', 156 | 'video', 157 | 'audio', 158 | 'quote', 159 | 'chat', 160 | ) 161 | ); 162 | 163 | add_theme_support( 'responsive-embeds' ); 164 | 165 | /* 166 | * Let WordPress manage the document title. 167 | * By adding theme support, we declare that this theme does not use a 168 | * hard-coded tag in the document head, and expect WordPress to 169 | * provide it for us. 170 | */ 171 | add_theme_support( 'title-tag' ); 172 | 173 | // custom logo support 174 | add_theme_support( 175 | 'custom-logo', 176 | array( 177 | 'height' => 30, 178 | 'width' => 30, 179 | ) 180 | ); 181 | 182 | // This theme supports a custom header 183 | $custom_header_args = array( 184 | 'width' => 1250, 185 | 'height' => 600, 186 | 'header-text' => true, 187 | ); 188 | add_theme_support( 'custom-header', $custom_header_args ); 189 | 190 | /** 191 | * Draw attention to supported WebSemantics 192 | */ 193 | add_theme_support( 'microformats2' ); 194 | add_theme_support( 'microformats' ); 195 | add_theme_support( 'microdata' ); 196 | add_theme_support( 'indieweb' ); 197 | 198 | // enable service workers 199 | add_theme_support( 'service_worker', true ); 200 | 201 | // add starter content 202 | add_theme_support( 203 | 'starter-content', 204 | array( 205 | 'widgets' => array( 206 | 'sidebar-1' => array( 207 | 'text_business_info', 208 | 'search', 209 | 'text_about', 210 | ), 211 | 212 | 'sidebar-2' => array( 213 | 'text_business_info', 214 | ), 215 | 216 | 'sidebar-3' => array( 217 | 'text_about', 218 | 'search', 219 | ), 220 | 221 | 'entry-meta' => array(), 222 | ), 223 | 224 | 'posts' => array( 225 | 'home', 226 | 'about' => array( 227 | 'thumbnail' => '{{image-sea}}', 228 | ), 229 | 'contact' => array( 230 | 'thumbnail' => '{{image-lights}}', 231 | ), 232 | 'blog' => array( 233 | 'thumbnail' => '{{image-beach}}', 234 | ), 235 | 'homepage-section' => array( 236 | 'thumbnail' => '{{image-lights}}', 237 | ), 238 | ), 239 | 240 | 'attachments' => array( 241 | 'image-beach' => array( 242 | 'post_title' => _x( 'Beach', 'Theme starter content', 'autonomie' ), 243 | 'file' => 'assets/images/beach.jpeg', 244 | ), 245 | 'image-sea' => array( 246 | 'post_title' => _x( 'Sea', 'Theme starter content', 'autonomie' ), 247 | 'file' => 'assets/images/sea.jpeg', 248 | ), 249 | 'image-lights' => array( 250 | 'post_title' => _x( 'Lights', 'Theme starter content', 'autonomie' ), 251 | 'file' => 'assets/images/lights.jpeg', 252 | ), 253 | ), 254 | 255 | 'options' => array( 256 | 'show_on_front' => 'page', 257 | 'page_on_front' => '{{home}}', 258 | 'page_for_posts' => '{{blog}}', 259 | 'header_image' => get_theme_file_uri( 'assets/images/beach.jpeg' ), 260 | ), 261 | 262 | 'theme_mods' => array( 263 | 'panel_1' => '{{homepage-section}}', 264 | 'panel_2' => '{{about}}', 265 | 'panel_3' => '{{blog}}', 266 | 'panel_4' => '{{contact}}', 267 | ), 268 | 269 | 'nav_menus' => array( 270 | 'primary' => array( 271 | 'name' => __( 'Top Menu', 'autonomie' ), 272 | 'items' => array( 273 | 'page_home', 274 | 'page_about', 275 | 'page_blog', 276 | 'page_contact', 277 | ), 278 | ), 279 | ), 280 | ) 281 | ); 282 | } 283 | endif; // autonomie_setup 284 | 285 | /** 286 | * Tell WordPress to run autonomie_setup() when the 'after_setup_theme' hook is run. 287 | */ 288 | add_action( 'after_setup_theme', 'autonomie_setup' ); 289 | 290 | /** 291 | * Add a pingback url auto-discovery header for singularly identifiable articles. 292 | */ 293 | function autonomie_pingback_header() { 294 | if ( is_singular() && pings_open() ) { 295 | printf( '<link rel="pingback" href="%1$s" />', esc_url( get_bloginfo( 'pingback_url' ) ) ); 296 | } 297 | } 298 | add_action( 'wp_head', 'autonomie_pingback_header' ); 299 | 300 | /** 301 | * Adds a rel-feed if the main page is not a list of posts 302 | */ 303 | function autonomie_publisher_feed_header() { 304 | if ( is_front_page() && 0 !== (int) get_option( 'page_for_posts', 0 ) ) { 305 | printf( PHP_EOL . '<link rel="feed" type="text/html" href="%1$s" title="%2$s" />' . PHP_EOL, esc_url( get_post_type_archive_link( 'post' ) ), __( 'POSH Feed', 'autonomie' ) ); 306 | } 307 | } 308 | add_action( 'wp_head', 'autonomie_publisher_feed_header' ); 309 | 310 | /** 311 | * Adds a rel-feed if the main page is not a list of posts 312 | */ 313 | function autonomie_header() { 314 | printf( PHP_EOL . '<meta name="supported-color-schemes" content="light dark">' . PHP_EOL ); 315 | } 316 | add_action( 'wp_head', 'autonomie_header' ); 317 | 318 | /** 319 | * Set the content width in pixels, based on the theme's design and stylesheet. 320 | * 321 | * Priority 0 to make it available to lower priority callbacks. 322 | * 323 | * @global int $content_width 324 | */ 325 | function autonomie_content_width() { 326 | $content_width = 900; 327 | 328 | $GLOBALS['content_width'] = apply_filters( 'autonomie_content_width', $content_width ); 329 | } 330 | add_action( 'after_setup_theme', 'autonomie_content_width', 0 ); 331 | 332 | /** 333 | * Set the default maxwith for the embeds 334 | */ 335 | function autonomie_embed_defaults() { 336 | return array( 337 | 'width' => 900, 338 | 'height' => 600, 339 | ); 340 | } 341 | add_filter( 'embed_defaults', 'autonomie_embed_defaults' ); 342 | 343 | function autonomie_login_logo() { 344 | if ( ! has_site_icon() ) { 345 | return; 346 | } 347 | 348 | ?> 349 | <style type="text/css"> 350 | body.login div#login h1 a { 351 | background-image: url( <?php echo get_site_icon_url( 84 ); ?> ); 352 | } 353 | </style> 354 | <?php 355 | } 356 | add_action( 'login_enqueue_scripts', 'autonomie_login_logo' ); 357 | 358 | /** 359 | * Set the default with for the embeds 360 | * Fixes issues with Vimeo 361 | */ 362 | function autonomie_oembed_fetch_url( $provider ) { 363 | $provider = add_query_arg( 'width', 900, $provider ); 364 | $provider = add_query_arg( 'height', 600, $provider ); 365 | 366 | return $provider; 367 | } 368 | add_filter( 'oembed_fetch_url', 'autonomie_oembed_fetch_url', 99 ); 369 | 370 | /** 371 | * Get our wp_nav_menu() fallback, wp_page_menu(), to show a home link. 372 | */ 373 | function autonomie_page_menu_args( $args ) { 374 | $args['show_home'] = true; 375 | 376 | return $args; 377 | } 378 | add_filter( 'wp_page_menu_args', 'autonomie_page_menu_args' ); 379 | 380 | if ( ! function_exists( 'autonomie_enqueue_scripts' ) ) : 381 | /** 382 | * Enqueue theme scripts 383 | * 384 | * @uses wp_enqueue_scripts() To enqueue scripts 385 | * 386 | * @since Autonomie 1.0.0 387 | */ 388 | function autonomie_enqueue_scripts() { 389 | /* 390 | * Adds JavaScript to pages with the comment form to support sites with 391 | * threaded comments (when in use). 392 | */ 393 | if ( 394 | is_singular() && 395 | comments_open() && 396 | get_option( 'thread_comments' ) 397 | ) { 398 | wp_enqueue_script( 'comment-reply' ); 399 | } 400 | 401 | wp_enqueue_script( 402 | 'autonomie-navigation', 403 | get_template_directory_uri() . '/assets/js/navigation.js', 404 | array(), 405 | '1.0.0', 406 | array( 407 | 'strategy' => 'async', 408 | ) 409 | ); 410 | 411 | if ( is_singular() ) { 412 | wp_enqueue_script( 413 | 'autonomie-share', 414 | get_template_directory_uri() . '/assets/js/share.js', 415 | array(), 416 | '1.0.0', 417 | array( 418 | 'strategy' => 'async', 419 | ) 420 | ); 421 | } 422 | 423 | wp_enqueue_style( 'dashicons' ); 424 | 425 | // Loads our main stylesheet. 426 | wp_enqueue_style( 'autonomie-style', get_stylesheet_uri(), array( 'dashicons' ) ); 427 | wp_enqueue_style( 'autonomie-print-style', get_template_directory_uri() . '/assets/css/print.css', array( 'autonomie-style' ), '1.0.0', 'print' ); 428 | wp_enqueue_style( 'autonomie-narrow-style', get_template_directory_uri() . '/assets/css/narrow-width.css', array( 'autonomie-style' ), '1.0.0', '(max-width: 800px)' ); 429 | wp_enqueue_style( 'autonomie-default-style', get_template_directory_uri() . '/assets/css/default-width.css', array( 'autonomie-style' ), '1.0.0', '(min-width: 800px)' ); 430 | wp_enqueue_style( 'autonomie-wide-style', get_template_directory_uri() . '/assets/css/wide-width.css', array( 'autonomie-style' ), '1.0.0', '(min-width: 1000px)' ); 431 | 432 | wp_localize_script( 433 | 'autonomie', 434 | 'vars', 435 | array( 436 | 'template_url' => get_template_directory_uri(), 437 | ) 438 | ); 439 | 440 | if ( has_header_image() ) { 441 | if ( is_author() ) { 442 | $css = '.page-banner { 443 | background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7)), url(' . get_header_image() . ') no-repeat center center scroll; 444 | }' . PHP_EOL; 445 | } else { 446 | $css = '.page-banner { 447 | background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.7)), url(' . get_header_image() . ') no-repeat center center scroll; 448 | }' . PHP_EOL; 449 | } 450 | 451 | wp_add_inline_style( 'autonomie-style', $css ); 452 | } 453 | } 454 | endif; 455 | 456 | add_action( 'wp_enqueue_scripts', 'autonomie_enqueue_scripts' ); 457 | 458 | if ( ! function_exists( 'autonomie_comment' ) ) : 459 | /** 460 | * Template for comments and pingbacks. 461 | * 462 | * To override this walker in a child theme without modifying the comments template 463 | * simply create your own autonomie_comment(), and that function will be used instead. 464 | * 465 | * Used as a callback by wp_list_comments() for displaying the comments. 466 | * 467 | * @since Autonomie 1.0.0 468 | */ 469 | function autonomie_comment( $comment, $args, $depth ) { 470 | $GLOBALS['comment'] = $comment; 471 | ?> 472 | <li <?php comment_class(); ?> id="li-comment-<?php comment_ID(); ?>"> 473 | <article id="comment-<?php comment_ID(); ?>" class="comment <?php $comment->comment_type; ?>" itemprop="comment" itemscope itemtype="https://schema.org/Comment"> 474 | <div class="edit-link"><?php edit_comment_link( __( 'Edit', 'autonomie' ), ' ' ); ?></div> 475 | <footer class="comment-meta commentmetadata"> 476 | <address class="comment-author p-author author vcard hcard h-card" itemprop="creator" itemscope itemtype="https://schema.org/Person"> 477 | <?php echo get_avatar( $comment, 40 ); ?> 478 | <?php printf( '<cite class="fn p-name" itemprop="name">%s</cite>', get_comment_author_link() ); ?> 479 | </address><!-- .comment-author .vcard --> 480 | 481 | <a href="<?php echo esc_url( get_comment_link( $comment->comment_ID ) ); ?>"><time class="updated published dt-updated dt-published" datetime="<?php comment_time( 'c' ); ?>" itemprop="dateCreated"> 482 | <?php 483 | /* translators: 1: date, 2: time */ 484 | printf( __( '%1$s at %2$s', 'autonomie' ), get_comment_date(), get_comment_time() ); 485 | ?> 486 | </time></a> 487 | </footer> 488 | 489 | <?php if ( '0' === $comment->comment_approved ) : ?> 490 | <p><em><?php _e( 'Your comment is awaiting moderation.', 'autonomie' ); ?></em></p> 491 | <?php endif; ?> 492 | 493 | <div class="comment-content e-content p-summary p-name" itemprop="text name description"><?php comment_text(); ?></div> 494 | 495 | <div class="reply"> 496 | <?php 497 | comment_reply_link( 498 | array_merge( 499 | $args, 500 | array( 501 | 'depth' => $depth, 502 | 'max_depth' => $args['max_depth'], 503 | ) 504 | ) 505 | ); 506 | ?> 507 | </div><!-- .reply --> 508 | </article><!-- #comment-## --> 509 | <?php 510 | } 511 | endif; // ends check for autonomie_comment() 512 | 513 | /** 514 | * All template functions 515 | */ 516 | require( get_template_directory() . '/includes/template-functions.php' ); 517 | 518 | /** 519 | * Widget handling 520 | */ 521 | require( get_template_directory() . '/includes/widgets.php' ); 522 | 523 | /** 524 | * Adds the featured image functionality 525 | */ 526 | require( get_template_directory() . '/includes/featured-image.php' ); 527 | 528 | /** 529 | * All customizer functions 530 | */ 531 | require( get_template_directory() . '/includes/customizer.php' ); 532 | 533 | /** 534 | * Adds some awesome websemantics like microformats(2) and microdata 535 | */ 536 | require( get_template_directory() . '/includes/semantics.php' ); 537 | 538 | /** 539 | * Add Webactions support 540 | */ 541 | require( get_template_directory() . '/includes/webactions.php' ); 542 | 543 | /** 544 | * Adds back compat handling for older WP versions 545 | */ 546 | require( get_template_directory() . '/includes/compat.php' ); 547 | 548 | /** 549 | * Feed extensions 550 | */ 551 | require( get_template_directory() . '/includes/feed.php' ); 552 | 553 | /** 554 | * Compatibility with other plugins, mostly IndieWeb related 555 | */ 556 | 557 | if ( defined( 'SYNDICATION_LINKS_VERSION' ) ) { 558 | /** 559 | * Adds Indieweb Syndcation Links 560 | * if github.com/dshanske/syndication-links is activated 561 | */ 562 | require( get_template_directory() . '/integrations/syndication-links.php' ); 563 | } 564 | 565 | if ( class_exists( 'Post_Kinds_Plugin' ) ) { 566 | require( get_template_directory() . '/integrations/post-kinds.php' ); 567 | } 568 | 569 | if ( class_exists( '\Activitypub\Activitypub' ) ) { 570 | require( get_template_directory() . '/integrations/activitypub.php' ); 571 | } 572 | 573 | /** 574 | * This theme was built with PHP, Semantic HTML, CSS, love, and Autonomie. 575 | */ 576 | -------------------------------------------------------------------------------- /header.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The Header for our theme. 4 | * 5 | * Displays all of the <head> section and everything up till <div id="main"> 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?><!DOCTYPE html> 11 | <html <?php language_attributes(); ?>> 12 | <head> 13 | <meta charset="<?php bloginfo( 'charset' ); ?>" /> 14 | <meta name="viewport" content="width=device-width, initial-scale=1" /> 15 | <link rel="profile" href="http://microformats.org/profile/specs" /> 16 | <link rel="profile" href="http://microformats.org/profile/hatom" /> 17 | 18 | <?php wp_head(); ?> 19 | </head> 20 | 21 | <body <?php body_class(); ?><?php autonomie_semantics( 'body' ); ?>> 22 | <?php 23 | /** 24 | * @see: https://make.wordpress.org/core/2019/04/24/miscellaneous-developer-updates-in-5-2/ 25 | */ 26 | if ( function_exists( 'wp_body_open' ) ) { 27 | wp_body_open(); 28 | } else { 29 | do_action( 'wp_body_open' ); 30 | } 31 | ?> 32 | <div id="page"> 33 | <div class="skip-link screen-reader-text"><a href="#content" title="<?php esc_attr_e( 'Skip to content', 'autonomie' ); ?>"><?php _e( 'Skip to content', 'autonomie' ); ?></a></div> 34 | <?php do_action( 'before' ); ?> 35 | <header id="site-header" class="site-header"> 36 | <div class="site-branding"> 37 | <?php 38 | if ( has_custom_logo() ) { 39 | echo get_custom_logo(); 40 | } 41 | 42 | if ( is_home() ) { 43 | $site_title_element = 'h1'; 44 | } else { 45 | $site_title_element = 'div'; 46 | } 47 | ?> 48 | <<?php echo $site_title_element; ?> id="site-title"<?php autonomie_semantics( 'site-title' ); ?>> 49 | <a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"<?php autonomie_semantics( 'site-url' ); ?>> 50 | <?php bloginfo( 'name' ); ?> 51 | </a> 52 | </<?php echo $site_title_element; ?>> 53 | 54 | <?php get_search_form( true ); ?> 55 | </div> 56 | 57 | <nav id="site-navigation" class="site-navigation"> 58 | <button class="menu-toggle" aria-controls="site-navigation" aria-expanded="false"><?php esc_html_e( 'Primary Menu', 'autonomie' ); ?></button> 59 | 60 | <?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?> 61 | </nav><!-- #site-navigation --> 62 | 63 | <?php get_template_part( 'template-parts/page-banner', autonomie_get_archive_type() ); ?> 64 | </header><!-- #site-header --> 65 | -------------------------------------------------------------------------------- /image.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying image attachments. 4 | * 5 | * @package Autonomie 6 | * @since Autonomie 1.0.0 7 | */ 8 | 9 | get_header(); ?> 10 | 11 | <main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>> 12 | 13 | <?php while ( have_posts() ) : the_post(); ?> 14 | 15 | <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>itemscope itemtype="https://schema.org/ImageObject"> 16 | <?php get_template_part( 'template-parts/entry-header' ); ?> 17 | 18 | <div class="entry-content e-content" itemprop="description"> 19 | 20 | <div class="entry-attachment"> 21 | <figure class="attachment"> 22 | <?php 23 | /** 24 | * Grab the IDs of all the image attachments in a gallery so we can get the URL of the next adjacent image in a gallery, 25 | * or the first image (if we're looking at the last image in a gallery), or, in a gallery of one, just the link to that image file 26 | */ 27 | $attachments = array_values( get_children( array( 'post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID' ) ) ); 28 | foreach ( $attachments as $k => $attachment ) { 29 | if ( $attachment->ID == $post->ID ) { 30 | break; 31 | } 32 | } 33 | $k++; 34 | // If there is more than 1 attachment in a gallery 35 | if ( count( $attachments ) > 1 ) { 36 | if ( isset( $attachments[ $k ] ) ) { 37 | // get the URL of the next image attachment 38 | $next_attachment_url = get_attachment_link( $attachments[ $k ]->ID ); 39 | } else { 40 | // or get the URL of the first image attachment 41 | $next_attachment_url = get_attachment_link( $attachments[0]->ID ); 42 | } 43 | } else { 44 | // or, if there's only 1 image, get the URL of the image 45 | $next_attachment_url = wp_get_attachment_url(); 46 | } 47 | ?> 48 | 49 | <a href="<?php echo $next_attachment_url; ?>" title="<?php echo esc_attr( get_the_title() ); ?>" rel="attachment"><?php 50 | $attachment_size = apply_filters( 'autonomie_attachment_size', 1200 ); 51 | echo wp_get_attachment_image( $post->ID, array( $attachment_size, $attachment_size ), null, array( 'itemprop' => 'image contentURL' ) ); // filterable image width with, essentially, no limit for image height. 52 | ?></a> 53 | 54 | <?php if ( ! empty( $post->post_excerpt ) ) : ?> 55 | <figcaption class="entry-caption"> 56 | <?php the_excerpt(); ?> 57 | </figcaption> 58 | <?php endif; ?> 59 | </figure><!-- .attachment --> 60 | </div><!-- .entry-attachment --> 61 | 62 | <?php the_content(); ?> 63 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 64 | </div><!-- .entry-content --> 65 | 66 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 67 | </article><!-- #post-<?php the_ID(); ?> --> 68 | 69 | <?php comments_template(); ?> 70 | 71 | <?php endwhile; // end of the loop. ?> 72 | 73 | </main><!-- #content --> 74 | 75 | <?php get_footer(); ?> 76 | -------------------------------------------------------------------------------- /includes/compat.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie back compat handling 4 | * 5 | * Some functions to add backwards compatibility to older WordPress versions 6 | * or to add some new functions to be more (for example) compatible 7 | * 8 | * @package Autonomie 9 | * @subpackage compat 10 | * @since Autonomie 1.5.0 11 | */ 12 | 13 | /** 14 | * adds compat handling for WP versions pre-*. 15 | * 16 | * @category pre-all 17 | */ 18 | 19 | /** 20 | * Adds the new input types to the comment-form 21 | * 22 | * @param string $form 23 | * @return string 24 | */ 25 | function autonomie_comment_autocomplete( $fields ) { 26 | $fields['author'] = preg_replace( '/<input/', '<input autocomplete="nickname name" enterkeyhint="next" ', $fields['author'] ); 27 | $fields['email'] = preg_replace( '/<input/', '<input autocomplete="email" inputmode="email" enterkeyhint="next" ', $fields['email'] ); 28 | $fields['url'] = preg_replace( '/<input/', '<input autocomplete="url" inputmode="url" enterkeyhint="send" ', $fields['url'] ); 29 | 30 | return $fields; 31 | } 32 | add_filter( 'comment_form_default_fields', 'autonomie_comment_autocomplete' ); 33 | 34 | /** 35 | * Adds the new HTML5 input types to the comment-text-area 36 | * 37 | * @param string $field 38 | * @return string 39 | */ 40 | function autonomie_comment_field_input_type( $field ) { 41 | return preg_replace( '/<textarea/', '<textarea enterkeyhint="next"', $field ); 42 | } 43 | add_filter( 'comment_form_field_comment', 'autonomie_comment_field_input_type' ); 44 | 45 | /** 46 | * Fix archive for "standard" post type 47 | * 48 | * @param WP_Query $query 49 | */ 50 | function autonomie_query_format_standard( $query ) { 51 | if ( 52 | isset( $query->query_vars['post_format'] ) && 53 | 'post-format-standard' === $query->query_vars['post_format'] 54 | ) { 55 | $post_formats = get_theme_support( 'post-formats' ); 56 | 57 | if ( 58 | $post_formats && 59 | is_array( $post_formats[0] ) && count( $post_formats[0] ) 60 | ) { 61 | $terms = array(); 62 | foreach ( $post_formats[0] as $format ) { 63 | $terms[] = 'post-format-' . $format; 64 | } 65 | $query->is_tax = null; 66 | 67 | unset( $query->query_vars['post_format'] ); 68 | unset( $query->query_vars['taxonomy'] ); 69 | unset( $query->query_vars['term'] ); 70 | 71 | $query->set( 72 | 'tax_query', 73 | array( 74 | 'relation' => 'AND', 75 | array( 76 | 'taxonomy' => 'post_format', 77 | 'terms' => $terms, 78 | 'field' => 'slug', 79 | 'operator' => 'NOT IN', 80 | ), 81 | ) 82 | ); 83 | } 84 | } 85 | } 86 | add_action( 'pre_get_posts', 'autonomie_query_format_standard' ); 87 | 88 | /** 89 | * Add lazy loading attribute 90 | * 91 | * @see https://www.webrocker.de/2019/08/20/wordpress-filter-for-lazy-loading-src/ 92 | * 93 | * @param string $content 94 | * 95 | * @return string the filtered content 96 | */ 97 | function autonomie_add_lazy_loading( $content ) { 98 | $content = preg_replace( '/(<[^>]*?)(\ssrc=)(.*?\/?>)/', '\1 loading="lazy" src=\3', $content ); 99 | 100 | return $content; 101 | } 102 | add_filter( 'the_content', 'autonomie_add_lazy_loading', 99 ); 103 | 104 | add_filter( 105 | 'wp_lazy_loading_enabled', 106 | function( $default, $tag_name, $context ) { 107 | if ( 'the_content' === $context ) { 108 | return false; 109 | } 110 | 111 | return $default; 112 | }, 113 | 20, 114 | 3 115 | ); 116 | 117 | if ( ! function_exists( 'get_self_link' ) ) { 118 | /** 119 | * Returns the link for the currently displayed feed. 120 | * 121 | * @since 5.3.0 122 | * 123 | * @return string Correct link for the atom:self element. 124 | */ 125 | function get_self_link() { 126 | $host = @parse_url( home_url() ); 127 | return set_url_scheme( 'http://' . $host['host'] . wp_unslash( $_SERVER['REQUEST_URI'] ) ); 128 | } 129 | } 130 | -------------------------------------------------------------------------------- /includes/customizer.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Adds "custom-color" support 4 | * 5 | * @since 1.3.0 6 | */ 7 | function autonomie_customize_register( $wp_customize ) { 8 | 9 | $wp_customize->add_section( 10 | 'autonomie_settings_section', 11 | array( 12 | 'title' => __( 'Advanced Settings', 'autonomie' ), 13 | 'description' => __( 'Enable/Disable some advanced Autonomie features.', 'autonomie' ), //Descriptive tooltip 14 | 'priority' => 35, 15 | ) 16 | ); 17 | } 18 | // add_action( 'customize_register', 'autonomie_customize_register' ); 19 | -------------------------------------------------------------------------------- /includes/featured-image.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Adds post-thumbnail support :) 4 | * 5 | * @since Autonomie 1.0.0 6 | */ 7 | function autonomie_the_post_thumbnail( $before = '', $after = '' ) { 8 | if ( autonomie_has_full_width_featured_image() ) { 9 | return; 10 | } 11 | 12 | if ( '' !== get_the_post_thumbnail() ) { 13 | $image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'post-thumbnail' ); 14 | 15 | if ( $image['1'] <= '400' ) { 16 | return; 17 | } 18 | 19 | $class = 'photo'; 20 | 21 | $post_format = get_post_format(); 22 | 23 | // use `u-photo` on photo/gallery posts 24 | if ( in_array( $post_format, array( 'image', 'gallery' ), true ) ) { 25 | $class .= ' u-photo'; 26 | } else { // otherwise use `u-featured` 27 | $class .= ' u-featured'; 28 | } 29 | 30 | echo $before; 31 | 32 | the_post_thumbnail( 33 | 'post-thumbnail', 34 | array( 35 | 'class' => $class, 36 | 'itemprop' => 'image', 37 | 'loading' => 'lazy', 38 | ) 39 | ); 40 | 41 | echo $after; 42 | } 43 | } 44 | 45 | /** 46 | * Adds post-thumbnail support :) 47 | * 48 | * @since Autonomie 1.0.0 49 | */ 50 | function autonomie_content_post_thumbnail( $content ) { 51 | if ( '' !== get_the_post_thumbnail() ) { 52 | $image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'post-thumbnail' ); 53 | 54 | if ( $image['1'] > '400' ) { 55 | return $content; 56 | } 57 | 58 | $class = 'alignright photo'; 59 | 60 | $post_format = get_post_format(); 61 | 62 | // use `u-photo` on photo/gallery posts 63 | if ( in_array( $post_format, array( 'image', 'gallery' ), true ) ) { 64 | $class .= ' u-photo'; 65 | } else { // otherwise use `u-featured` 66 | $class .= ' u-featured'; 67 | } 68 | 69 | $thumbnail = get_the_post_thumbnail( 70 | null, 71 | 'post-thumbnail', 72 | array( 73 | 'class' => $class, 74 | 'itemprop' => 'image', 75 | 'loading' => 'lazy', 76 | ) 77 | ); 78 | 79 | return sprintf( '<p>%s</p>%s', $thumbnail, $content ); 80 | } 81 | 82 | return $content; 83 | } 84 | add_filter( 'the_content', 'autonomie_content_post_thumbnail' ); 85 | 86 | /** 87 | * Add a checkbox for Post Covers to the featured image metabox 88 | */ 89 | function autonomie_featured_image_meta( $content, $post_id ) { 90 | // Text for checkbox 91 | $text = __( 'Use as post cover (full-width)', 'autonomie' ); 92 | 93 | // Get the current setting 94 | $value = esc_attr( get_post_meta( $post_id, 'full_width_featured_image', '1' ) ); 95 | // Output the checkbox HTML 96 | $label = '<input type="hidden" name="full_width_featured_image" value="0">'; 97 | $label .= '<label for="full_width_featured_image" class="selectit"><input name="full_width_featured_image" type="checkbox" id="full_width_featured_image" value="1" ' . checked( $value, 1, 0 ) . '> ' . $text . '</label>'; 98 | 99 | return $content . $label; 100 | } 101 | add_filter( 'admin_post_thumbnail_html', 'autonomie_featured_image_meta', 10, 2 ); 102 | 103 | /** 104 | * Safe the Post Covers 105 | * 106 | * @param int $post_id The ID of the post being saved. 107 | */ 108 | function autonomie_save_post( $post_id ) { 109 | // if this is an autosave, our form has not been submitted, so we don't want to do anything. 110 | if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { 111 | return $post_id; 112 | } 113 | 114 | if ( ! array_key_exists( 'full_width_featured_image', $_POST ) ) { 115 | return $post_id; 116 | } 117 | 118 | if ( ! array_key_exists( 'post_type', $_POST ) ) { 119 | return $post_id; 120 | } 121 | 122 | // check the user's permissions. 123 | if ( 'page' === $_POST['post_type'] ) { 124 | if ( ! current_user_can( 'edit_page', $post_id ) ) { 125 | return $post_id; 126 | } 127 | } else { 128 | if ( ! current_user_can( 'edit_post', $post_id ) ) { 129 | return $post_id; 130 | } 131 | } 132 | 133 | // sanitize user input. 134 | $full_width_featured_image = sanitize_text_field( $_POST['full_width_featured_image'] ); 135 | 136 | // update the meta field in the database. 137 | update_post_meta( $post_id, 'full_width_featured_image', $full_width_featured_image ); 138 | } 139 | add_action( 'save_post', 'autonomie_save_post', 5, 1 ); 140 | 141 | /** 142 | * Return true if Auto-Set Featured Image as Post Cover is enabled and it hasn't 143 | * been disabled for this post. 144 | * 145 | * Returns true if the current post has Full Width Featured Image enabled. 146 | * 147 | * Returns false if not a Single post type or there is no Featured Image selected 148 | * or none of the above conditions are true. 149 | */ 150 | function autonomie_has_full_width_featured_image() { 151 | // If this isn't a Single post type or we don't have a Featured Image set 152 | if ( ! ( is_single() || is_page() ) || ! has_post_thumbnail() ) { 153 | return false; 154 | } 155 | 156 | $full_width_featured_image = get_post_meta( get_the_ID(), 'full_width_featured_image', true ); 157 | 158 | // If Use featured image as Post Cover has been checked in the Featured Image meta box, return true. 159 | if ( '1' === $full_width_featured_image ) { 160 | return true; 161 | } 162 | 163 | return false; // Default 164 | } 165 | 166 | /** 167 | * Enqueue theme scripts 168 | * 169 | * @uses wp_enqueue_scripts() To enqueue scripts 170 | * 171 | * @since Autonomie 1.0.0 172 | */ 173 | function autonomie_enqueue_featured_image_scripts() { 174 | if ( is_singular() && autonomie_has_full_width_featured_image() ) { 175 | $image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full' ); 176 | 177 | $css = '.entry-header { 178 | background: linear-gradient(190deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7)), url(' . $image[0] . ') no-repeat center center scroll; 179 | }' . PHP_EOL; 180 | 181 | wp_add_inline_style( 'autonomie-style', $css ); 182 | } 183 | } 184 | add_action( 'wp_enqueue_scripts', 'autonomie_enqueue_featured_image_scripts' ); 185 | 186 | /** 187 | * Add full-width-featured-image to body class when displaying a post with Full Width Featured Image enabled 188 | */ 189 | function autonomie_full_width_featured_image_post_class( $classes ) { 190 | if ( is_singular() && autonomie_has_full_width_featured_image() ) { 191 | $classes[] = 'has-full-width-featured-image'; 192 | } 193 | return $classes; 194 | } 195 | add_filter( 'post_class', 'autonomie_full_width_featured_image_post_class' ); 196 | 197 | /** 198 | * Register the `full_width_featured_image` meta 199 | * 200 | * @return void 201 | */ 202 | function autonomie_register_meta() { 203 | register_meta( 204 | 'post', 205 | 'full_width_featured_image', 206 | array( 207 | 'show_in_rest' => true, 208 | 'single' => true, 209 | 'type' => 'boolean', 210 | ) 211 | ); 212 | } 213 | add_action( 'init', 'autonomie_register_meta' ); 214 | 215 | /** 216 | * Enqueue the required block editor assets/JS files 217 | * 218 | * @return void 219 | */ 220 | function autonomie_enqueue_block_editor_assets() { 221 | wp_enqueue_script( 222 | 'autonomie-block-editor', 223 | get_template_directory_uri() . '/assets/js/block-editor.js', 224 | array( 'wp-editor', 'wp-i18n', 'wp-element', 'wp-compose', 'wp-components' ), 225 | '1.0.0', 226 | true 227 | ); 228 | } 229 | add_action( 'enqueue_block_editor_assets', 'autonomie_enqueue_block_editor_assets', 9 ); 230 | -------------------------------------------------------------------------------- /includes/feed.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie Feeds class 4 | * 5 | * @package Autonomie 6 | * @subpackage Feeds 7 | * @since Autonomie 1.0.0 8 | */ 9 | 10 | /** 11 | * Adds support for "standard" Post-Format 12 | * 13 | * @param string $post_format the post format slug 14 | * 15 | * @return void 16 | */ 17 | function autonomie_get_post_format_archive_feed_link( $post_format, $feed = '' ) { 18 | $default_feed = get_default_feed(); 19 | if ( empty( $feed ) ) { 20 | $feed = $default_feed; 21 | } 22 | 23 | $link = autonomie_get_post_format_link( $post_format ); 24 | if ( ! $link ) { 25 | return false; 26 | } 27 | 28 | if ( get_option( 'permalink_structure' ) ) { 29 | $link = trailingslashit( $link ); 30 | $link .= 'feed/'; 31 | if ( $feed !== $default_feed ) { 32 | $link .= "$feed/"; 33 | } 34 | } else { 35 | $link = add_query_arg( 'feed', $feed, $link ); 36 | } 37 | 38 | /** 39 | * Filters the post type archive feed link. 40 | * 41 | * @param string $link The post type archive feed link. 42 | * @param string $feed Feed type. Possible values include 'rss2', 'atom'. 43 | */ 44 | return apply_filters( 'post_format_archive_feed_link', $link, $feed ); 45 | } 46 | 47 | /** 48 | * Adds some more feeds discovery headers 49 | * 50 | * @see https://notiz.blog/2019/02/21/untitled/ 51 | * @see https://notiz.blog/2019/09/18/eine-posse/ 52 | * @see https://github.com/dshanske/extra-links 53 | * 54 | * @return void 55 | */ 56 | function autonomie_extend_singular_feed_discovery( $args = array() ) { 57 | $defaults = array( 58 | /* translators: Separator between blog name and feed type in feed links */ 59 | 'separator' => _x( '»', 'feed link', 'autonomie' ), 60 | /* translators: 1: blog name, 2: separator(raquo), 3: post title */ 61 | 'singletitle' => __( '%1$s %2$s %3$s Comments Feed', 'autonomie' ), 62 | /* translators: 1: blog name, 2: separator(raquo), 3: category name */ 63 | 'cattitle' => __( '%1$s %2$s %3$s Category Feed', 'autonomie' ), 64 | /* translators: 1: blog name, 2: separator(raquo), 3: tag name */ 65 | 'tagtitle' => __( '%1$s %2$s %3$s Tag Feed', 'autonomie' ), 66 | /* translators: 1: blog name, 2: separator(raquo), 3: term name, 4: taxonomy singular name */ 67 | 'taxtitle' => __( '%1$s %2$s %3$s %4$s Feed', 'autonomie' ), 68 | /* translators: 1: blog name, 2: separator(raquo), 3: author name */ 69 | 'authortitle' => __( '%1$s %2$s Posts by %3$s Feed', 'autonomie' ), 70 | /* translators: 1: blog name, 2: separator(raquo), 3: search phrase */ 71 | 'searchtitle' => __( '%1$s %2$s Search Results for “%3$s” Feed', 'autonomie' ), 72 | /* translators: 1: blog name, 2: separator(raquo), 3: post type */ 73 | 'posttypetitle' => __( '%1$s %2$s %3$s Post-Type Feed', 'autonomie' ), 74 | ); 75 | 76 | $args = wp_parse_args( $args, $defaults ); 77 | $feeds = array(); 78 | 79 | // Post/Page feeds 80 | if ( is_singular() ) { 81 | // add tag feeds 82 | foreach ( wp_get_post_terms( get_the_ID(), array( 'post_tag', 'category' ) ) as $term ) { 83 | $tax = get_taxonomy( $term->taxonomy ); 84 | 85 | $feeds[] = array( 86 | 'title' => sprintf( $args['taxtitle'], get_bloginfo( 'name' ), $args['separator'], $term->name, $tax->labels->singular_name ), 87 | 'href' => get_term_feed_link( $term->term_id, $term->taxonomy ), 88 | ); 89 | } 90 | 91 | $post = get_post(); 92 | 93 | $author_id = $post->post_author; 94 | $feeds[] = array( 95 | 'title' => sprintf( $args['authortitle'], get_bloginfo( 'name' ), $args['separator'], get_the_author_meta( 'display_name', $author_id ) ), 96 | 'href' => get_author_feed_link( $author_id ), 97 | ); 98 | 99 | $feeds[] = array( 100 | 'title' => sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], get_post_format_string( autonomie_get_post_format() ) ), 101 | 'href' => autonomie_get_post_format_archive_feed_link( autonomie_get_post_format() ), 102 | ); 103 | } 104 | 105 | // Homepage feeds 106 | if ( is_home() ) { 107 | // does theme support post formats 108 | $post_formats = get_theme_support( 'post-formats' ); 109 | 110 | if ( $post_formats ) { 111 | $post_formats = current( $post_formats ); 112 | } else { 113 | $post_formats = array(); 114 | } 115 | 116 | $post_formats[] = 'standard'; 117 | 118 | foreach ( $post_formats as $post_format ) { 119 | $feeds[] = array( 120 | 'title' => sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], get_post_format_string( $post_format ) ), 121 | 'href' => autonomie_get_post_format_archive_feed_link( $post_format ), 122 | ); 123 | } 124 | } 125 | 126 | // Add "standard" post-format feed discovery 127 | global $wp_query; 128 | if ( 129 | is_archive() && 130 | isset( $wp_query->query['post_format'] ) && 131 | 'post-format-standard' === $wp_query->query['post_format'] 132 | ) { 133 | $feeds[] = array( 134 | 'title' => sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], get_post_format_string( 'standard' ) ), 135 | 'href' => autonomie_get_post_format_archive_feed_link( 'standard' ), 136 | ); 137 | } 138 | 139 | foreach ( $feeds as $feed ) { 140 | if ( array_key_exists( 'href', $feed ) && array_key_exists( 'title', $feed ) ) { 141 | printf( '<link rel="alternate" type="%s" title="%s" href="%s" />', esc_attr( feed_content_type() ), esc_attr( $feed['title'] ), esc_url( $feed['href'] ) ); 142 | echo PHP_EOL; 143 | } 144 | } 145 | } 146 | add_action( 'wp_head', 'autonomie_extend_singular_feed_discovery' ); 147 | -------------------------------------------------------------------------------- /includes/semantics.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie Websemantics polyfill 4 | * 5 | * Some functions to add backwards compatibility to older WordPress versions 6 | * Adds some awesome websemantics like microformats(2) and microdata 7 | * 8 | * @link https://microformats.org/wiki/microformats 9 | * @link https://microformats.org/wiki/microformats2 10 | * @link https://schema.org 11 | * @link https://indieweb.org 12 | * 13 | * @package Autonomie 14 | * @subpackage semantics 15 | * @since Autonomie 1.5.0 16 | */ 17 | 18 | /** 19 | * Adds custom classes to the array of body classes. 20 | * 21 | * @since Autonomie 1.0.0 22 | */ 23 | function autonomie_body_classes( $classes ) { 24 | $classes[] = get_theme_mod( 'autonomie_columns', 'multi' ) . '-column'; 25 | 26 | if ( ! is_singular() && ! is_404() ) { 27 | $classes[] = 'hfeed'; 28 | $classes[] = 'h-feed'; 29 | $classes[] = 'feed'; 30 | } 31 | 32 | // Adds a class of single-author to blogs with only 1 published author 33 | if ( ! is_multi_author() ) { 34 | $classes[] = 'single-author'; 35 | } 36 | 37 | if ( get_header_image() ) { 38 | $classes[] = 'custom-header'; 39 | } 40 | 41 | return $classes; 42 | } 43 | add_filter( 'body_class', 'autonomie_body_classes' ); 44 | 45 | /** 46 | * Adds custom classes to the array of post classes. 47 | * 48 | * @since Autonomie 1.0.0 49 | */ 50 | function autonomie_post_classes( $classes ) { 51 | $classes = array_diff( $classes, array( 'hentry' ) ); 52 | 53 | if ( ! is_singular() ) { 54 | return autonomie_get_post_classes( $classes ); 55 | } else { 56 | return $classes; 57 | } 58 | } 59 | add_filter( 'post_class', 'autonomie_post_classes', 99 ); 60 | 61 | /** 62 | * Adds custom classes to the array of comment classes. 63 | * 64 | * @since Autonomie 1.4.0 65 | */ 66 | function autonomie_comment_classes( $classes ) { 67 | $classes[] = 'h-entry'; 68 | $classes[] = 'h-cite'; 69 | $classes[] = 'p-comment'; 70 | $classes[] = 'comment'; 71 | 72 | return array_unique( $classes ); 73 | } 74 | add_filter( 'comment_class', 'autonomie_comment_classes', 99 ); 75 | 76 | /** 77 | * Encapsulates post-classes to use them on different tags. 78 | */ 79 | function autonomie_get_post_classes( $classes = array() ) { 80 | // Adds a class for microformats v2 81 | $classes[] = 'h-entry'; 82 | 83 | // add hentry to the same tag as h-entry 84 | $classes[] = 'hentry'; 85 | 86 | return array_unique( $classes ); 87 | } 88 | 89 | /** 90 | * Adds microformats v2 support to the comment_author_link. 91 | * 92 | * @since Autonomie 1.0.0 93 | */ 94 | function autonomie_author_link( $link ) { 95 | // Adds a class for microformats v2 96 | return preg_replace( '/(class\s*=\s*[\"|\'])/i', '${1}u-url ', $link ); 97 | } 98 | add_filter( 'get_comment_author_link', 'autonomie_author_link' ); 99 | 100 | /** 101 | * Adds microformats v2 support to the get_avatar() method. 102 | * 103 | * @since Autonomie 1.0.0 104 | */ 105 | function autonomie_pre_get_avatar_data( $args, $id_or_email ) { 106 | if ( ! isset( $args['class'] ) ) { 107 | $args['class'] = array(); 108 | } 109 | 110 | if ( ! is_array( $args['class'] ) ) { 111 | $args['class'] = array( $args['class'] ); 112 | } 113 | 114 | // Adds a class for microformats v2 115 | $args['class'] = array_unique( array_merge( $args['class'], array( 'u-photo' ) ) ); 116 | $args['extra_attr'] .= ' itemprop="image" loading="lazy"'; 117 | 118 | // Adds default alt attribute 119 | if ( empty( $args['alt'] ) ) { 120 | $username = get_the_author_meta( 'display_name', $id_or_email ); 121 | 122 | if ( $username ) { 123 | $args['alt'] = sprintf( __( 'User Avatar of %s' ), $username ); 124 | } else { 125 | $args['alt'] = __( 'User Avatar' ); 126 | } 127 | } 128 | 129 | return $args; 130 | } 131 | add_filter( 'pre_get_avatar_data', 'autonomie_pre_get_avatar_data', 99, 2 ); 132 | 133 | /** 134 | * Add rel-prev attribute to previous_image_link. 135 | * 136 | * @param string a-tag 137 | * 138 | * @return string 139 | */ 140 | function autonomie_semantic_previous_image_link( $link ) { 141 | return preg_replace( '/<a/i', '<a rel="prev"', $link ); 142 | } 143 | add_filter( 'previous_image_link', 'autonomie_semantic_previous_image_link' ); 144 | 145 | /** 146 | * Add rel-next attribute to next_image_link. 147 | * 148 | * @param string a-tag 149 | * 150 | * @return string 151 | */ 152 | function autonomie_semantic_next_image_link( $link ) { 153 | return preg_replace( '/<a/i', '<a rel="next"', $link ); 154 | } 155 | add_filter( 'next_image_link', 'autonomie_semantic_next_image_link' ); 156 | 157 | /** 158 | * Add rel-prev attribute to next_posts_link_attributes. 159 | * 160 | * @param string Attributes 161 | * 162 | * @return string 163 | */ 164 | function autonomie_next_posts_link_attributes( $attr ) { 165 | return $attr . ' rel="prev"'; 166 | } 167 | add_filter( 'next_posts_link_attributes', 'autonomie_next_posts_link_attributes' ); 168 | 169 | /** 170 | * Add rel-next attribute to previous_posts_link. 171 | * 172 | * @param string Attributes 173 | * 174 | * @return string 175 | */ 176 | function autonomie_previous_posts_link_attributes( $attr ) { 177 | return $attr . ' rel="next"'; 178 | } 179 | add_filter( 'previous_posts_link_attributes', 'autonomie_previous_posts_link_attributes' ); 180 | 181 | /** 182 | * 183 | * 184 | */ 185 | function autonomie_get_search_form( $form ) { 186 | $form = preg_replace( '/<form/i', '<search><form itemprop="potentialAction" itemscope itemtype="https://schema.org/SearchAction"', $form ); 187 | $form = preg_replace( '/<\/form>/i', '<meta itemprop="target" content="' . home_url( '/?s={s} ' ) . '"/></form></search>', $form ); 188 | $form = preg_replace( '/<input type="search"/i', '<input type="search" enterkeyhint="search" itemprop="query-input"', $form ); 189 | 190 | return $form; 191 | } 192 | add_filter( 'get_search_form', 'autonomie_get_search_form' ); 193 | 194 | /** 195 | * Add semantics. 196 | * 197 | * @param string $id The class identifier. 198 | * 199 | * @return array 200 | */ 201 | function autonomie_get_semantics( $id = null ) { 202 | $classes = array(); 203 | 204 | // add default values 205 | switch ( $id ) { 206 | case 'body': 207 | if ( is_search() ) { 208 | $classes['itemscope'] = array( '' ); 209 | $classes['itemtype'] = array( 'https://schema.org/Blog', 'https://schema.org/SearchResultsPage' ); 210 | } elseif ( is_author() ) { 211 | $classes['itemscope'] = array( '' ); 212 | $classes['itemtype'] = array( 'https://schema.org/Blog', 'https://schema.org/ProfilePage' ); 213 | } elseif ( is_single() ) { 214 | $classes['itemscope'] = array( '' ); 215 | $classes['itemtype'] = array( 'https://schema.org/BlogPosting' ); 216 | $classes['itemref'] = array( 'site-publisher' ); 217 | } elseif ( is_page() ) { 218 | $classes['itemscope'] = array( '' ); 219 | $classes['itemtype'] = array( 'https://schema.org/WebPage' ); 220 | } elseif ( ! is_singular() ) { 221 | $classes['itemscope'] = array( '' ); 222 | $classes['itemtype'] = array( 'https://schema.org/Blog', 'https://schema.org/WebPage' ); 223 | } 224 | 225 | $classes['itemid'] = array( get_self_link() ); 226 | 227 | break; 228 | case 'main': 229 | break; 230 | case 'site-title': 231 | if ( is_home() ) { 232 | $classes['itemprop'] = array( 'name' ); 233 | $classes['class'] = array( 'p-name' ); 234 | } 235 | break; 236 | case 'page-title': 237 | if ( ! is_singular() && ! is_home() ) { 238 | $classes['itemprop'] = array( 'name' ); 239 | $classes['class'] = array( 'p-name' ); 240 | } 241 | break; 242 | case 'page-description': 243 | if ( ! is_singular() ) { 244 | $classes['itemprop'] = array( 'description' ); 245 | $classes['class'] = array( 'p-summary', 'e-content' ); 246 | } 247 | break; 248 | case 'site-url': 249 | if ( ! is_singular() ) { 250 | $classes['itemprop'] = array( 'url' ); 251 | $classes['class'] = array( 'u-url', 'url' ); 252 | } 253 | break; 254 | case 'post': 255 | if ( ! is_singular() ) { 256 | $classes['itemprop'] = array( 'blogPost' ); 257 | $classes['itemscope'] = array( '' ); 258 | $classes['itemtype'] = array( 'https://schema.org/BlogPosting' ); 259 | $classes['itemref'] = array( 'site-publisher' ); 260 | $classes['itemid'] = array( get_permalink() ); 261 | } 262 | break; 263 | } 264 | 265 | $classes = apply_filters( 'autonomie_semantics', $classes, $id ); 266 | $classes = apply_filters( "autonomie_semantics_{$id}", $classes, $id ); 267 | 268 | return $classes; 269 | } 270 | 271 | /** 272 | * Echos the semantic classes added via the "autonomie_semantics" filters. 273 | * 274 | * @param string $id The class identifier. 275 | */ 276 | function autonomie_get_the_semantics( $id ) { 277 | $classes = autonomie_get_semantics( $id ); 278 | 279 | if ( ! $classes ) { 280 | return; 281 | } 282 | 283 | $class = ''; 284 | 285 | foreach ( $classes as $key => $value ) { 286 | $class .= ' ' . esc_attr( $key ) . '="' . esc_attr( join( ' ', $value ) ) . '"'; 287 | } 288 | 289 | return $class; 290 | } 291 | 292 | /** 293 | * Echos the semantic classes added via the "autonomie_semantics" filters. 294 | * 295 | * @param string $id The class identifier. 296 | */ 297 | function autonomie_semantics( $id ) { 298 | $classes = autonomie_get_semantics( $id ); 299 | 300 | if ( ! $classes ) { 301 | return; 302 | } 303 | 304 | foreach ( $classes as $key => $value ) { 305 | echo ' ' . esc_attr( $key ) . '="' . esc_attr( join( ' ', $value ) ) . '"'; 306 | } 307 | } 308 | 309 | /** 310 | * Add `p-category` to tags links. 311 | * 312 | * @link https://www.webrocker.de/2016/05/13/add-class-attribute-to-wordpress-the_tags-markup/ 313 | * 314 | * @param array $links 315 | * 316 | * @return array 317 | */ 318 | function autonomie_term_links_tag( $links ) { 319 | $post = get_post(); 320 | 321 | $terms = get_the_terms( $post->ID, 'post_tag' ); 322 | 323 | if ( is_wp_error( $terms ) ) { 324 | return $terms; 325 | } 326 | 327 | if ( empty( $terms ) ) { 328 | return false; 329 | } 330 | 331 | $links = array(); 332 | 333 | foreach ( $terms as $term ) { 334 | $link = get_term_link( $term ); 335 | if ( is_wp_error( $link ) ) { 336 | return $link; 337 | } 338 | $links[] = '<a class="p-category" href="' . esc_url( $link ) . '" rel="tag">' . $term->name . '</a>'; 339 | } 340 | return $links; 341 | } 342 | add_filter( 'term_links-post_tag', 'autonomie_term_links_tag' ); 343 | -------------------------------------------------------------------------------- /includes/template-functions.php: -------------------------------------------------------------------------------- 1 | <?php 2 | if ( ! function_exists( 'autonomie_content_nav' ) ) : 3 | /** 4 | * Display navigation to next/previous pages when applicable. 5 | * 6 | * @since Autonomie 1.0.0 7 | */ 8 | function autonomie_content_nav( $nav_id ) { 9 | global $wp_query; 10 | ?> 11 | <?php if ( is_home() || is_archive() || is_search() ) : // navigation links for home, archive, and search pages ?> 12 | <nav id="archive-nav"> 13 | <div class="assistive-text"><?php _e( 'Post navigation', 'autonomie' ); ?></div> 14 | <?php echo paginate_links(); ?> 15 | </nav><!-- #<?php echo $nav_id; ?> --> 16 | <?php endif; ?> 17 | <?php 18 | } 19 | endif; // autonomie_content_nav 20 | 21 | if ( ! function_exists( 'autonomie_posted_by' ) ) : 22 | /** 23 | * Prints HTML with meta information for the current author. 24 | * Create your own autonomie_posted_by to override in a child theme. 25 | * 26 | * @since Autonomie 1.0.0 27 | */ 28 | function autonomie_posted_by() { 29 | printf( 30 | '<address class="byline"> 31 | <span class="author p-author vcard hcard h-card" itemprop="author" itemscope itemtype="https://schema.org/Person"> 32 | %1$s 33 | <a class="url uid u-url u-uid fn p-name" href="%2$s" title="%3$s" rel="author"> 34 | <span itemprop="name">%4$s</span> 35 | </a> 36 | <link itemprop="url" href="%2$s" /> 37 | </span> 38 | </address>', 39 | get_avatar( get_the_author_meta( 'ID' ), 40), 40 | esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), 41 | // translators: 42 | esc_attr( sprintf( __( 'View all posts by %s', 'autonomie' ), get_the_author() ) ), 43 | esc_html( get_the_author() ) 44 | ); 45 | } 46 | endif; 47 | 48 | if ( ! function_exists( 'autonomie_posted_on' ) ) : 49 | /** 50 | * Prints HTML with meta information for the current post-date/time. 51 | * Create your own autonomie_posted_on to override in a child theme. 52 | * 53 | * @since Autonomie 1.0.0 54 | */ 55 | function autonomie_posted_on( $type = 'published' ) { 56 | global $query; 57 | 58 | if ( ! in_array( $type, array( 'published', 'updated' ) ) ) { 59 | $type = 'published'; 60 | } 61 | 62 | if ( get_query_var( 'is_now', false ) ) { 63 | $type = 'updated'; 64 | } 65 | 66 | if ( 'updated' === $type ) { 67 | // updated 68 | $time = get_the_modified_time(); 69 | $date_c = get_the_modified_date( 'c' ); 70 | $date = get_the_modified_date(); 71 | $item_prop = 'dateModified'; 72 | } else { 73 | // published 74 | $time = get_the_time(); 75 | $date_c = get_the_date( 'c' ); 76 | $date = get_the_date(); 77 | $item_prop = 'datePublished'; 78 | } 79 | 80 | // translators: the author byline 81 | printf( 82 | // translators: 83 | '<a href="%1$s" title="%2$s" rel="bookmark" class="url u-url" itemprop="mainEntityOfPage"><time class="entry-date %5$s dt-%5$s" datetime="%3$s" itemprop="%6$s">%4$s</time></a>', 84 | esc_url( get_permalink() ), 85 | esc_attr( $time ), 86 | esc_attr( $date_c ), 87 | esc_html( $date ), 88 | esc_html( $type ), 89 | esc_html( $item_prop ), 90 | ); 91 | } 92 | endif; 93 | 94 | /** 95 | * Display the id for the post div. 96 | * 97 | * @param string $id 98 | */ 99 | function autonomie_post_id( $post_id = null ) { 100 | if ( $post_id ) { 101 | echo 'id="' . $post_id . '"'; 102 | } else { 103 | echo 'id="' . autonomie_get_post_id() . '"'; 104 | } 105 | } 106 | 107 | /** 108 | * Retrieve the id for the post div. 109 | * 110 | * @return string The post-id. 111 | */ 112 | function autonomie_get_post_id() { 113 | $post_id = 'post-' . get_the_ID(); 114 | 115 | return apply_filters( 'autonomie_post_id', $post_id, get_the_ID() ); 116 | } 117 | 118 | function autonomie_main_class( $class = '' ) { 119 | // Separates class names with a single space, collates class names for body element 120 | echo 'class="' . join( ' ', autonomie_get_main_class( $class ) ) . '"'; 121 | } 122 | 123 | function autonomie_get_main_class( $class = '' ) { 124 | $classes = array(); 125 | 126 | if ( is_singular() ) { 127 | $classes = autonomie_get_post_classes( $classes ); 128 | } 129 | 130 | if ( ! empty( $class ) ) { 131 | if ( ! is_array( $class ) ) { 132 | $class = preg_split( '#\s+#', $class ); 133 | } 134 | $classes = array_merge( $classes, $class ); 135 | } else { 136 | // Ensure that we always coerce class to being an array. 137 | $class = array(); 138 | } 139 | 140 | $classes = array_map( 'esc_attr', $classes ); 141 | 142 | /** 143 | * Filters the list of CSS main class names for the current post or page. 144 | * 145 | * @since 2.8.0 146 | * 147 | * @param string[] $classes An array of main class names. 148 | * @param string[] $class An array of additional class names added to the main. 149 | */ 150 | $classes = apply_filters( 'autonomie_main_class', $classes, $class ); 151 | 152 | return array_unique( $classes ); 153 | } 154 | 155 | function autonomie_get_the_archive_title() { 156 | if ( is_archive() ) { 157 | return get_the_archive_title(); 158 | } elseif ( is_search() ) { 159 | // translators: The title of the search results page 160 | return sprintf( __( 'Search Results for: %s', 'autonomie' ), '<span>' . get_search_query() . '</span>' ); 161 | } 162 | } 163 | 164 | /** 165 | * Check if page banner is enabled. 166 | * 167 | * @return boolean 168 | */ 169 | function autonomie_show_page_banner() { 170 | if ( is_home() && ! display_header_text() ) { 171 | return false; 172 | } 173 | 174 | if ( is_home() || is_archive() || is_search() ) { 175 | return true; 176 | } 177 | 178 | return false; 179 | } 180 | 181 | /** 182 | * Adds support for standard post-format 183 | * 184 | * @return void 185 | */ 186 | function autonomie_get_post_format() { 187 | return get_post_format() ? : 'standard'; 188 | } 189 | 190 | /** 191 | * Add support for Attachment and Article. 192 | * 193 | * @return void 194 | */ 195 | function autonomie_get_post_format_string() { 196 | if ( 'attachment' === get_post_type() ) { 197 | return __( 'Attachment', 'autonomie' ); 198 | } elseif ( 'page' === get_post_type() ) { 199 | return __( 'Page', 'autonomie' ); 200 | } elseif ( get_post_format() ) { 201 | return get_post_format(); 202 | } else { 203 | return __( 'Text', 'autonomie' ); 204 | } 205 | } 206 | 207 | /** 208 | * Adds support for "standard" post-format archive links. 209 | * 210 | * @param string $post_format 211 | * 212 | * @return void 213 | */ 214 | function autonomie_get_post_format_link( $post_format ) { 215 | if ( in_array( get_post_type(), array( 'page', 'attachment' ), true ) ) { 216 | return get_permalink(); 217 | } 218 | 219 | if ( 'standard' !== $post_format ) { 220 | return get_post_format_link( $post_format ); 221 | } 222 | 223 | global $wp_rewrite; 224 | 225 | $termlink = $wp_rewrite->get_extra_permastruct( 'post_format' ); 226 | 227 | if ( empty( $termlink ) ) { 228 | $termlink = '?post_format=standard'; 229 | $termlink = home_url( $termlink ); 230 | } else { 231 | $termlink = str_replace( '%post_format%', 'standard', $termlink ); 232 | $termlink = home_url( user_trailingslashit( $termlink, 'category' ) ); 233 | } 234 | 235 | return $termlink; 236 | } 237 | 238 | /** 239 | * Check archive type. 240 | * 241 | * @return string 242 | */ 243 | function autonomie_get_archive_type() { 244 | $type = null; 245 | 246 | if ( is_author() ) { 247 | $type = 'author'; 248 | } 249 | 250 | return apply_filters( 'autonomie_archive_type', $type ); 251 | } 252 | 253 | /** 254 | * Returns Meta-Data like "number of posts" and "subscribe buttons" for the Author. 255 | * 256 | * @return string 257 | */ 258 | function autonomie_get_archive_author_meta() { 259 | $meta = array(); 260 | 261 | // translators: list of followers 262 | $meta[] = sprintf( __( '%s Followers', 'autonomie' ), apply_filters( 'autonomie_archive_author_followers', 0, get_the_author_meta( 'ID' ) ) ); 263 | // translators: a post counter 264 | $meta[] = sprintf( __( '%s Posts', 'autonomie' ), count_user_posts( get_the_author_meta( 'ID' ) ) ); 265 | $meta[] = sprintf( '<indie-action do="follow" with="%1$s"><a rel="alternate" class="feed u-feed openwebicons-feed" href="%1$s">%2$s</a></indie-action>', get_author_feed_link( get_the_author_meta( 'ID' ) ), __( 'Subscribe', 'autonomie' ) ); 266 | 267 | $meta = apply_filters( 'autonomie_archive_author_meta', $meta, get_the_author_meta( 'ID' ) ); 268 | 269 | return implode( ' | ', $meta ); 270 | } 271 | 272 | /** 273 | * Returns the page description 274 | * 275 | * @return string The page description 276 | */ 277 | function autonomie_get_the_archive_description() { 278 | if ( is_home() ) { 279 | return get_bloginfo( 'description' ); 280 | } elseif ( is_author() ) { 281 | return get_the_author_meta( 'description' ); 282 | } elseif ( is_archive() ) { 283 | return get_the_archive_description(); 284 | } elseif ( is_search() ) { 285 | // @see https://github.com/raamdev/independent-publisher/blob/513e7ff71312f585f13eb1460b4d9bc74d0b59bd/inc/template-tags.php#L674 286 | global $wp_query; 287 | $total = $wp_query->found_posts; 288 | // translators: Description for search results 289 | $stats_text = sprintf( _n( 'Found %1$s search result for <strong>%2$s</strong>.', 'Found %1$s search results for <strong>%2$s</strong>.', $total, 'autonomie' ), number_format_i18n( $total ), get_search_query() ); 290 | 291 | return wpautop( $stats_text ); 292 | } 293 | } 294 | 295 | /** 296 | * Estimated reading time 297 | */ 298 | function autonomie_reading_time() { 299 | $content = get_post_field( 'post_content' ); 300 | $word_count = str_word_count( strip_tags( $content ) ); 301 | $readingtime = ceil( $word_count / 200 ); 302 | 303 | printf( 304 | _n( 305 | '<span class="entry-duration"><time datetime="PT%1$sM" class="dt-duration" itemprop="timeRequired">%1$s minute</time> to read</span>', 306 | '<span class="entry-duration"><time datetime="PT%1$sM" class="dt-duration" itemprop="timeRequired">%1$s minutes</time> to read</span>', 307 | $readingtime, 308 | 'autonomie' 309 | ), 310 | number_format_i18n( $readingtime ) 311 | ); 312 | } 313 | 314 | /** 315 | * Add possibility to use `the_excerpt` instead of `the_content` for longer posts 316 | * 317 | * @return void 318 | */ 319 | function autonomie_the_content() { 320 | if ( is_search() ) { 321 | the_excerpt(); 322 | return; 323 | } 324 | 325 | if ( is_singular() ) { 326 | the_content( __( 'Continue reading <span class="meta-nav">→</span>', 'autonomie' ) ); 327 | return; 328 | } 329 | 330 | $count = str_word_count( strip_tags( get_the_content() ) ); 331 | 332 | if ( AUTONOMIE_EXCERPT && ( false === get_post_format() || $count > AUTONOMIE_EXCERPT_COUNT ) ) { 333 | the_excerpt(); 334 | } else { 335 | the_content( __( 'Continue reading <span class="meta-nav">→</span>', 'autonomie' ) ); 336 | } 337 | } 338 | -------------------------------------------------------------------------------- /includes/webactions.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Add Webactions to the reply links in the comment section. 4 | * 5 | * @param string $link the html representation of the comment link 6 | * @param array $args associative array of options 7 | * @param int $comment ID of comment being replied to 8 | * @param int $post ID of post that comment is going to be displayed on 9 | * 10 | * @return string the new reply link 11 | */ 12 | function autonomie_webaction_comment_reply_link( $link, $args, $comment, $post ) { 13 | $permalink = get_permalink( $post->ID ); 14 | return '<indie-action do="reply" with="' . esc_url( add_query_arg( 'replytocom', $comment->comment_ID, $permalink ) ) . '">' . $link . '</indie-action>'; 15 | } 16 | add_filter( 'comment_reply_link', 'autonomie_webaction_comment_reply_link', null, 4 ); 17 | 18 | /** 19 | * Surround comment form with a reply action. 20 | */ 21 | function autonomie_webaction_comment_form_before() { 22 | $post = get_queried_object(); 23 | $permalink = get_permalink( $post->ID ); 24 | echo '<indie-action do="reply" with="' . $permalink . '">'; 25 | } 26 | add_action( 'comment_form_before', 'autonomie_webaction_comment_form_before', 0 ); 27 | 28 | /** 29 | * Surround comment form with a reply action. 30 | */ 31 | function autonomie_webaction_comment_form_after() { 32 | echo '</indie-action>'; 33 | } 34 | add_action( 'comment_form_after', 'autonomie_webaction_comment_form_after', 0 ); 35 | -------------------------------------------------------------------------------- /includes/widgets.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Register widgetized area and update sidebar with default widgets. 4 | */ 5 | function autonomie_widgets_init() { 6 | require( get_template_directory() . '/widgets/class-autonomie-author-widget.php' ); 7 | register_widget( 'Autonomie_Author_Widget' ); 8 | 9 | require( get_template_directory() . '/widgets/class-autonomie-taxonomy-widget.php' ); 10 | register_widget( 'Autonomie_Taxonomy_Widget' ); 11 | 12 | register_sidebar( 13 | array( 14 | 'name' => __( 'Sidebar 1', 'autonomie' ), 15 | 'id' => 'sidebar-1', 16 | 'description' => __( 'A sidebar area', 'autonomie' ), 17 | 'before_widget' => '<aside id="%1$s" class="widget %2$s">', 18 | 'after_widget' => '</aside>', 19 | 'before_title' => '<h2 class="widget-title">', 20 | 'after_title' => '</h2>', 21 | ) 22 | ); 23 | 24 | register_sidebar( 25 | array( 26 | 'name' => __( 'Sidebar 2', 'autonomie' ), 27 | 'id' => 'sidebar-2', 28 | 'description' => __( 'A second sidebar area', 'autonomie' ), 29 | 'before_widget' => '<aside id="%1$s" class="widget %2$s">', 30 | 'after_widget' => '</aside>', 31 | 'before_title' => '<h2 class="widget-title">', 32 | 'after_title' => '</h2>', 33 | ) 34 | ); 35 | 36 | register_sidebar( 37 | array( 38 | 'name' => __( 'Sidebar 3', 'autonomie' ), 39 | 'id' => 'sidebar-3', 40 | 'description' => __( 'A third sidebar area', 'autonomie' ), 41 | 'before_widget' => '<aside id="%1$s" class="widget %2$s">', 42 | 'after_widget' => '</aside>', 43 | 'before_title' => '<h2 class="widget-title">', 44 | 'after_title' => '</h2>', 45 | ) 46 | ); 47 | 48 | register_sidebar( 49 | array( 50 | 'name' => __( 'Entry-Meta', 'autonomie' ), 51 | 'id' => 'entry-meta', 52 | 'description' => __( 'Extend the Entry-Meta', 'autonomie' ), 53 | 'before_widget' => '', 54 | 'after_widget' => '', 55 | 'before_title' => '', 56 | 'after_title' => '', 57 | ) 58 | ); 59 | } 60 | add_action( 'widgets_init', 'autonomie_widgets_init' ); 61 | 62 | /** 63 | * Add entry-meta default widgets 64 | * 65 | * @param array $content Array of starter content. 66 | * @param array $config Array of theme-specific starter content configuration. 67 | */ 68 | function autonomie_starter_content_add_widget( $content, $config ) { 69 | if ( ! isset( $content['widgets']['entry-meta'] ) ) { 70 | $content['widgets']['entry-meta'] = array(); 71 | } 72 | 73 | $content['widgets']['entry-meta'][] = array( 74 | 'autonomie-author', 75 | array(), 76 | ); 77 | $content['widgets']['entry-meta'][] = array( 78 | 'autonomie-taxonomy', 79 | array(), 80 | ); 81 | 82 | return $content; 83 | } 84 | add_filter( 'get_theme_starter_content', 'autonomie_starter_content_add_widget', 10, 2 ); 85 | 86 | function autonomie_activate () { 87 | // Set up default widgets for default theme. 88 | update_option( 89 | 'widget_autonomie-author', 90 | array( 91 | 2 => array( 'title' => '' ), 92 | '_multiwidget' => 1, 93 | ) 94 | ); 95 | 96 | update_option( 97 | 'widget_autonomie-taxonomy', 98 | array( 99 | 2 => array( 'title' => '' ), 100 | '_multiwidget' => 1, 101 | ) 102 | ); 103 | 104 | update_option( 105 | 'sidebars_widgets', 106 | array( 107 | 'wp_inactive_widgets' => array(), 108 | 'sidebar-1' => array( 109 | 0 => 'search-2', 110 | 1 => 'recent-posts-2', 111 | 2 => 'recent-comments-2', 112 | ), 113 | 'sidebar-2' => array( 114 | 0 => 'archives-2', 115 | ), 116 | 'sidebar-3' => array( 117 | 0 => 'categories-2', 118 | 1 => 'meta-2', 119 | ), 120 | 'entry-meta' => array( 121 | 0 => 'autonomie-author-2', 122 | 1 => 'autonomie-taxonomy-2', 123 | ), 124 | 'array_version' => 3, 125 | ) 126 | ); 127 | } 128 | 129 | add_action('after_switch_theme', 'autonomie_activate'); 130 | -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The main template file. 4 | * 5 | * This is the most generic template file in a WordPress theme 6 | * and one of the two required files for a theme (the other being style.css). 7 | * It is used to display a page when nothing more specific matches a query. 8 | * E.g., it puts together the home page when no home.php file exists. 9 | * Learn more: http://codex.wordpress.org/Template_Hierarchy 10 | * 11 | * @package Autonomie 12 | * @since Autonomie 1.0.0 13 | */ 14 | 15 | get_header(); ?> 16 | 17 | <main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>> 18 | 19 | <?php if ( have_posts() ) : ?> 20 | 21 | <?php /* Start the Loop */ ?> 22 | <?php while ( have_posts() ) : the_post(); ?> 23 | 24 | <?php 25 | /* Include the Post-Format-specific template for the content. 26 | * If you want to overload this in a child theme then include a file 27 | * called content-___.php (where ___ is the Post Format name) and that will be used instead. 28 | */ 29 | get_template_part( 'templates/content', get_post_format() ); 30 | ?> 31 | 32 | <?php endwhile; ?> 33 | 34 | <?php else : ?> 35 | 36 | <article id="post-0" class="post no-results not-found"> 37 | <header class="entry-header"> 38 | <h1 class="entry-title p-entry-title"><?php _e( 'Nothing Found', 'autonomie' ); ?></h1> 39 | </header><!-- .entry-header --> 40 | 41 | <div class="entry-content e-entry-content"> 42 | <p><?php _e( 'It seems we can’t find what you’re looking for. Perhaps searching can help.', 'autonomie' ); ?></p> 43 | <?php get_search_form(); ?> 44 | </div><!-- .entry-content --> 45 | </article><!-- #post-0 --> 46 | 47 | <?php endif; ?> 48 | 49 | </main><!-- #content --> 50 | 51 | <?php autonomie_content_nav( 'nav-below' ); ?> 52 | 53 | <?php get_footer(); ?> 54 | -------------------------------------------------------------------------------- /integrations/activitypub.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie ActivityPub 4 | * 5 | * Adds support for ActivityPub 6 | * 7 | * @link https://github.com/pfefferle/wordpress-activitypub 8 | * 9 | * @package Autonomie 10 | * @subpackage indieweb 11 | */ 12 | 13 | /** 14 | * Add ActivityPub informations to the archive author meta data 15 | * 16 | * @param array $meta the meta array 17 | * @param int $author_id the author id 18 | * 19 | * @return array the filtered meta array 20 | */ 21 | function autonomie_activitypub_archive_author_meta( $meta, $author_id ) { 22 | // translators: how to follow 23 | $meta[] = sprintf( __( '<indie-action do="follow" width="%1$s">Follow <code>%2$s</code> (fediverse)</indie-action>', 'autonomie' ), get_author_posts_url( $author_id ), \Activitypub\get_webfinger_resource( $author_id ) ); 24 | 25 | return $meta; 26 | } 27 | add_filter( 'autonomie_archive_author_meta', 'autonomie_activitypub_archive_author_meta', 10, 2 ); 28 | 29 | /** 30 | * ActivityPub follower counter 31 | * 32 | * @param int $followers the follower counter 33 | * @param int $author_id the author id 34 | * 35 | * @return array the filtered counter 36 | */ 37 | function autonomie_activitypub_followers( $followers, $author_id ) { 38 | $activitypub_followers = get_user_option( 'activitypub_followers', $author_id ); 39 | 40 | if ( $activitypub_followers ) { 41 | $activitypub_followers = count( $activitypub_followers ); 42 | } else { 43 | $activitypub_followers = 0; 44 | } 45 | 46 | $followers = $followers + $activitypub_followers; 47 | 48 | return $followers; 49 | } 50 | add_filter( 'autonomie_archive_author_followers', 'autonomie_activitypub_followers', 10, 2 ); 51 | -------------------------------------------------------------------------------- /integrations/post-kinds.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie Post Kinds 4 | * 5 | * Adds support for Post Kinds 6 | * 7 | * @link https://github.com/dshanske/indieweb-post-kinds 8 | * 9 | * @package Autonomie 10 | * @subpackage indieweb 11 | */ 12 | 13 | /** 14 | * Removes native Post-Kinds implementation 15 | */ 16 | function autonomie_post_kinds_init() { 17 | if ( method_exists( 'Kind_Taxonomy', 'get_icon' ) ) { 18 | add_filter( 'kind_icon_display', '__return_false', 10 ); 19 | } 20 | 21 | remove_filter( 'the_content', array( 'Kind_View', 'content_response' ), 9 ); 22 | remove_filter( 'the_excerpt', array( 'Kind_View', 'excerpt_response' ), 9 ); 23 | remove_action( 'wp_enqueue_scripts', array( 'Post_Kinds_Plugin', 'style_load' ) ); 24 | } 25 | add_action( 'init', 'autonomie_post_kinds_init' ); 26 | 27 | /** 28 | * Adds the reply-context above the article body 29 | * 30 | * @return string the reply-context 31 | */ 32 | function autonomie_post_kinds_content() { 33 | printf( '<div class="entry-reaction">%s</div>', Kind_View::get_display() ); 34 | } 35 | add_action( 'autonomie_before_entry_content', 'autonomie_post_kinds_content' ); 36 | 37 | /** 38 | * Replace the Post-Format header with the Post-Kinds header 39 | * 40 | * @param string $post_format_html Post-Format html 41 | * @return string Post-Kind html 42 | */ 43 | function autonomie_post_kinds_format( $post_format_html ) { 44 | if ( ! get_post_kind_slug() ) { 45 | return $post_format_html; 46 | } 47 | 48 | $kind_slug = get_post_kind_slug(); 49 | $kind_icon = Kind_Taxonomy::get_icon( $kind_slug ); 50 | $kind_string = get_post_kind_string( $kind_slug ); 51 | $kind_link = esc_url( get_post_kind_link( get_post_kind() ) ); 52 | 53 | return sprintf( '<a class="kind kind-%s" href="%s">%s %s</a>', $kind_slug, $kind_link, $kind_icon, $kind_string ); 54 | } 55 | add_filter( 'autonomie_post_format', 'autonomie_post_kinds_format' ); 56 | -------------------------------------------------------------------------------- /integrations/syndication-links.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Autonomie Syndication Links 4 | * 5 | * Adds support for Syndication Links 6 | * 7 | * @link https://github.com/dshanske/syndication-links 8 | * 9 | * @package Autonomie 10 | * @subpackage indieweb 11 | */ 12 | 13 | /** 14 | * Remove the integration of `the_content` filter 15 | */ 16 | function autonomie_syndication_links_init() { 17 | remove_filter( 'the_content', array( 'Syn_Config', 'the_content' ) , 30 ); 18 | } 19 | add_action( 'init', 'autonomie_syndication_links_init' ); 20 | 21 | /** 22 | * Remove the Syndication-Links CSS 23 | */ 24 | function autonomie_syndication_links_print_scripts() { 25 | wp_dequeue_style( 'syndication-style' ); 26 | } 27 | add_action( 'wp_print_styles', 'autonomie_syndication_links_print_scripts', 100 ); 28 | 29 | /** 30 | * Added links to the post-footer 31 | */ 32 | function autonomie_syndication_links() { 33 | if ( function_exists( 'get_syndication_links' ) ) { 34 | echo '<div class="syndication-links">'; 35 | _e( 'Syndication Links', 'autonomie' ); 36 | echo get_syndication_links( null, array( 'show_text_before' => null) ); 37 | echo '</div>'; 38 | } 39 | } 40 | add_action( 'autonomie_entry_footer', 'autonomie_syndication_links' ); 41 | -------------------------------------------------------------------------------- /languages/autonomie.pot: -------------------------------------------------------------------------------- 1 | # <!=Copyright (C) 2024 Matthias Pfefferle 2 | # This file is distributed under the MIT.=!> 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Autonomie 1.0.0\n" 6 | "Report-Msgid-Bugs-To: https://wordpress.org/support/theme/autonomie\n" 7 | "POT-Creation-Date: 2024-10-04 19:20:04+00:00\n" 8 | "MIME-Version: 1.0\n" 9 | "Content-Type: text/plain; charset=utf-8\n" 10 | "Content-Transfer-Encoding: 8bit\n" 11 | "PO-Revision-Date: 2024-MO-DA HO:MI+ZONE\n" 12 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 13 | "Language-Team: LANGUAGE <LL@li.org>\n" 14 | "X-Generator: grunt-wp-i18n 1.0.3\n" 15 | 16 | #: 404.php:15 17 | msgid "Well this is somewhat embarrassing, isn’t it?" 18 | msgstr "" 19 | 20 | #: 404.php:19 21 | msgid "" 22 | "It seems we can’t find what you’re looking for. Perhaps " 23 | "searching, or one of the links below, can help." 24 | msgstr "" 25 | 26 | #: 404.php:26 27 | msgid "Most Used Categories" 28 | msgstr "" 29 | 30 | #: 404.php:34 31 | #. translators: %1$s: smilie 32 | msgid "Try looking in the monthly archives. %1$s" 33 | msgstr "" 34 | 35 | #: 500.php:15 36 | msgid "Internal Server Error" 37 | msgstr "" 38 | 39 | #: 500.php:20 40 | msgid "More Details" 41 | msgstr "" 42 | 43 | #: archive.php:41 index.php:38 44 | msgid "Nothing Found" 45 | msgstr "" 46 | 47 | #: archive.php:45 index.php:42 48 | msgid "" 49 | "It seems we can’t find what you’re looking for. Perhaps " 50 | "searching can help." 51 | msgstr "" 52 | 53 | #: comments.php:16 54 | msgid "This post is password protected. Enter the password to view any comments." 55 | msgstr "" 56 | 57 | #: comments.php:34 58 | msgid "One thought on “%2$s”" 59 | msgid_plural "%1$s thoughts on “%2$s”" 60 | msgstr[0] "" 61 | msgstr[1] "" 62 | 63 | #: comments.php:43 comments.php:63 64 | msgid "Comment navigation" 65 | msgstr "" 66 | 67 | #: comments.php:44 comments.php:64 68 | msgid "← Older Comments" 69 | msgstr "" 70 | 71 | #: comments.php:45 comments.php:65 72 | msgid "Newer Comments →" 73 | msgstr "" 74 | 75 | #: comments.php:75 76 | msgid "Comments are closed." 77 | msgstr "" 78 | 79 | #: footer.php:31 80 | msgid "This site is powered by %1$s and styled with the %2$s theme" 81 | msgstr "" 82 | 83 | #: functions.php:83 84 | msgid "Blue" 85 | msgstr "" 86 | 87 | #: functions.php:88 88 | msgid "Lighter blue" 89 | msgstr "" 90 | 91 | #: functions.php:93 92 | msgid "Blue jeans" 93 | msgstr "" 94 | 95 | #: functions.php:98 96 | msgid "Orioles orange" 97 | msgstr "" 98 | 99 | #: functions.php:103 100 | msgid "USC gold" 101 | msgstr "" 102 | 103 | #: functions.php:108 104 | msgid "Gargoyle gas" 105 | msgstr "" 106 | 107 | #: functions.php:113 108 | msgid "Yellow" 109 | msgstr "" 110 | 111 | #: functions.php:118 112 | msgid "Android green" 113 | msgstr "" 114 | 115 | #: functions.php:123 116 | msgid "White" 117 | msgstr "" 118 | 119 | #: functions.php:128 120 | msgid "Very light gray" 121 | msgstr "" 122 | 123 | #: functions.php:133 124 | msgid "Very dark gray" 125 | msgstr "" 126 | 127 | #: functions.php:143 header.php:58 128 | msgid "Primary Menu" 129 | msgstr "" 130 | 131 | #: functions.php:271 132 | msgid "Top Menu" 133 | msgstr "" 134 | 135 | #: functions.php:305 136 | msgid "POSH Feed" 137 | msgstr "" 138 | 139 | #: functions.php:474 140 | msgid "Edit" 141 | msgstr "" 142 | 143 | #: functions.php:484 144 | #. translators: 1: date, 2: time 145 | msgid "%1$s at %2$s" 146 | msgstr "" 147 | 148 | #: functions.php:490 149 | msgid "Your comment is awaiting moderation." 150 | msgstr "" 151 | 152 | #: header.php:33 153 | msgid "Skip to content" 154 | msgstr "" 155 | 156 | #: image.php:63 templates/content-aside.php:18 templates/content-audio.php:18 157 | #: templates/content-chat.php:18 templates/content-gallery.php:18 158 | #: templates/content-image.php:18 templates/content-link.php:18 159 | #: templates/content-page.php:18 templates/content-quote.php:18 160 | #: templates/content-single.php:18 templates/content-status.php:18 161 | #: templates/content-video.php:18 162 | msgid "Pages:" 163 | msgstr "" 164 | 165 | #: includes/customizer.php:12 166 | msgid "Advanced Settings" 167 | msgstr "" 168 | 169 | #: includes/customizer.php:13 170 | msgid "Enable/Disable some advanced Autonomie features." 171 | msgstr "" 172 | 173 | #: includes/featured-image.php:91 174 | msgid "Use as post cover (full-width)" 175 | msgstr "" 176 | 177 | #: includes/feed.php:61 178 | #. translators: 1: blog name, 2: separator(raquo), 3: post title 179 | msgid "%1$s %2$s %3$s Comments Feed" 180 | msgstr "" 181 | 182 | #: includes/feed.php:63 183 | #. translators: 1: blog name, 2: separator(raquo), 3: category name 184 | msgid "%1$s %2$s %3$s Category Feed" 185 | msgstr "" 186 | 187 | #: includes/feed.php:65 188 | #. translators: 1: blog name, 2: separator(raquo), 3: tag name 189 | msgid "%1$s %2$s %3$s Tag Feed" 190 | msgstr "" 191 | 192 | #: includes/feed.php:67 193 | #. translators: 1: blog name, 2: separator(raquo), 3: term name, 4: taxonomy 194 | #. singular name 195 | msgid "%1$s %2$s %3$s %4$s Feed" 196 | msgstr "" 197 | 198 | #: includes/feed.php:69 199 | #. translators: 1: blog name, 2: separator(raquo), 3: author name 200 | msgid "%1$s %2$s Posts by %3$s Feed" 201 | msgstr "" 202 | 203 | #: includes/feed.php:71 204 | #. translators: 1: blog name, 2: separator(raquo), 3: search phrase 205 | msgid "%1$s %2$s Search Results for “%3$s” Feed" 206 | msgstr "" 207 | 208 | #: includes/feed.php:73 209 | #. translators: 1: blog name, 2: separator(raquo), 3: post type 210 | msgid "%1$s %2$s %3$s Post-Type Feed" 211 | msgstr "" 212 | 213 | #: includes/semantics.php:123 214 | msgid "User Avatar of %s" 215 | msgstr "" 216 | 217 | #: includes/semantics.php:125 218 | msgid "User Avatar" 219 | msgstr "" 220 | 221 | #: includes/template-functions.php:13 222 | msgid "Post navigation" 223 | msgstr "" 224 | 225 | #: includes/template-functions.php:42 226 | #. translators: 227 | msgid "View all posts by %s" 228 | msgstr "" 229 | 230 | #: includes/template-functions.php:160 231 | #. translators: The title of the search results page 232 | msgid "Search Results for: %s" 233 | msgstr "" 234 | 235 | #: includes/template-functions.php:197 236 | msgid "Attachment" 237 | msgstr "" 238 | 239 | #: includes/template-functions.php:199 240 | msgid "Page" 241 | msgstr "" 242 | 243 | #: includes/template-functions.php:203 244 | msgid "Text" 245 | msgstr "" 246 | 247 | #: includes/template-functions.php:262 248 | #. translators: list of followers 249 | msgid "%s Followers" 250 | msgstr "" 251 | 252 | #: includes/template-functions.php:264 253 | #. translators: a post counter 254 | msgid "%s Posts" 255 | msgstr "" 256 | 257 | #: includes/template-functions.php:265 258 | msgid "Subscribe" 259 | msgstr "" 260 | 261 | #: includes/template-functions.php:289 262 | #. translators: Description for search results 263 | msgid "Found %1$s search result for <strong>%2$s</strong>." 264 | msgid_plural "Found %1$s search results for <strong>%2$s</strong>." 265 | msgstr[0] "" 266 | msgstr[1] "" 267 | 268 | #: includes/template-functions.php:304 269 | msgid "" 270 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" " 271 | "class=\"dt-duration\" itemprop=\"timeRequired\">%1$s minute</time> to " 272 | "read</span>" 273 | msgid_plural "" 274 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" " 275 | "class=\"dt-duration\" itemprop=\"timeRequired\">%1$s minutes</time> to " 276 | "read</span>" 277 | msgstr[0] "" 278 | msgstr[1] "" 279 | 280 | #: includes/template-functions.php:326 includes/template-functions.php:335 281 | msgid "Continue reading <span class=\"meta-nav\">→</span>" 282 | msgstr "" 283 | 284 | #: includes/widgets.php:14 285 | msgid "Sidebar 1" 286 | msgstr "" 287 | 288 | #: includes/widgets.php:16 289 | msgid "A sidebar area" 290 | msgstr "" 291 | 292 | #: includes/widgets.php:26 293 | msgid "Sidebar 2" 294 | msgstr "" 295 | 296 | #: includes/widgets.php:28 297 | msgid "A second sidebar area" 298 | msgstr "" 299 | 300 | #: includes/widgets.php:38 301 | msgid "Sidebar 3" 302 | msgstr "" 303 | 304 | #: includes/widgets.php:40 305 | msgid "A third sidebar area" 306 | msgstr "" 307 | 308 | #: includes/widgets.php:50 309 | msgid "Entry-Meta" 310 | msgstr "" 311 | 312 | #: includes/widgets.php:52 313 | msgid "Extend the Entry-Meta" 314 | msgstr "" 315 | 316 | #: integrations/activitypub.php:23 317 | #. translators: how to follow 318 | msgid "" 319 | "<indie-action do=\"follow\" width=\"%1$s\">Follow <code>%2$s</code> " 320 | "(fediverse)</indie-action>" 321 | msgstr "" 322 | 323 | #: integrations/syndication-links.php:35 324 | msgid "Syndication Links" 325 | msgstr "" 326 | 327 | #: offline.php:15 328 | msgid "Offline" 329 | msgstr "" 330 | 331 | #: template-parts/entry-author.php:7 332 | msgid "Subscribe to author feed" 333 | msgstr "" 334 | 335 | #: template-parts/entry-footer.php:5 template-parts/entry-footer.php:19 336 | msgid "Leave a comment" 337 | msgstr "" 338 | 339 | #: template-parts/entry-footer.php:5 template-parts/entry-footer.php:19 340 | msgid "1 Comment" 341 | msgstr "" 342 | 343 | #: template-parts/entry-footer.php:5 template-parts/entry-footer.php:19 344 | msgid "% Comments" 345 | msgstr "" 346 | 347 | #: template-parts/entry-header.php:22 348 | msgid "Permalink to %s" 349 | msgstr "" 350 | 351 | #: template-parts/entry-share.php:3 352 | msgid "share" 353 | msgstr "" 354 | 355 | #: template-parts/entry-share.php:10 356 | msgid "Shortlink" 357 | msgstr "" 358 | 359 | #: template-parts/entry-share.php:14 360 | msgid "Permalink" 361 | msgstr "" 362 | 363 | #: template-parts/entry-share.php:22 template-parts/entry-share.php:27 364 | msgid "HTML" 365 | msgstr "" 366 | 367 | #: template-parts/entry-taxonomy.php:7 368 | #. translators: used between list items, there is a space after the comma 369 | msgid "Categories" 370 | msgstr "" 371 | 372 | #: template-parts/entry-taxonomy.php:8 template-parts/entry-taxonomy.php:19 373 | msgid "%1$s" 374 | msgstr "" 375 | 376 | #: template-parts/entry-taxonomy.php:18 377 | #. translators: used between list items, there is a space after the comma 378 | msgid "Tags" 379 | msgstr "" 380 | 381 | #. Theme Name of the plugin/theme 382 | msgid "Autonomie" 383 | msgstr "" 384 | 385 | #. Theme URI of the plugin/theme 386 | msgid "https://github.com/pfefferle/Autonomie" 387 | msgstr "" 388 | 389 | #. Description of the plugin/theme 390 | msgid "" 391 | "Autonomie is a highly semantic, responsive, accessible and seo optimized " 392 | "WordPress Theme. It provides HTML5 templates refined with microformats, " 393 | "microformats v2 and microdata (Schema.org). Autonomie supports a lot of " 394 | "OpenWeb plugins and is fully IndieWeb compatible." 395 | msgstr "" 396 | 397 | #. Author of the plugin/theme 398 | msgid "Matthias Pfefferle" 399 | msgstr "" 400 | 401 | #. Author URI of the plugin/theme 402 | msgid "https://notiz.blog/" 403 | msgstr "" 404 | 405 | #. Template Name of the plugin/theme 406 | msgid "\"/now\" Template" 407 | msgstr "" 408 | 409 | #: functions.php:242 410 | msgctxt "Theme starter content" 411 | msgid "Beach" 412 | msgstr "" 413 | 414 | #: functions.php:246 415 | msgctxt "Theme starter content" 416 | msgid "Sea" 417 | msgstr "" 418 | 419 | #: functions.php:250 420 | msgctxt "Theme starter content" 421 | msgid "Lights" 422 | msgstr "" 423 | 424 | #: includes/feed.php:59 425 | #. translators: Separator between blog name and feed type in feed links 426 | msgctxt "feed link" 427 | msgid "»" 428 | msgstr "" -------------------------------------------------------------------------------- /languages/de_DE.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/languages/de_DE.mo -------------------------------------------------------------------------------- /languages/de_DE.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: Autonomie\n" 4 | "POT-Creation-Date: 2022-04-27 10:46+0200\n" 5 | "PO-Revision-Date: 2022-04-27 10:48+0200\n" 6 | "Last-Translator: \n" 7 | "Language-Team: \n" 8 | "Language: de_DE\n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 13 | "X-Generator: Poedit 3.0.1\n" 14 | "X-Poedit-Basepath: ..\n" 15 | "X-Poedit-Flags-xgettext: --add-comments=translators:\n" 16 | "X-Poedit-WPHeader: style.css\n" 17 | "X-Poedit-SourceCharset: UTF-8\n" 18 | "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;" 19 | "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;" 20 | "_nx_noop:3c,1,2;__ngettext_noop:1,2\n" 21 | "X-Poedit-SearchPath-0: .\n" 22 | "X-Poedit-SearchPathExcluded-0: *.min.js\n" 23 | "X-Poedit-SearchPathExcluded-1: node_modules\n" 24 | 25 | #: 404.php:15 26 | msgid "Well this is somewhat embarrassing, isn’t it?" 27 | msgstr "Nun, das ist etwas peinlich, nicht wahr?" 28 | 29 | #: 404.php:19 30 | msgid "" 31 | "It seems we can’t find what you’re looking for. Perhaps " 32 | "searching, or one of the links below, can help." 33 | msgstr "" 34 | "Es scheint, dass wir nicht finden können, was Sie suchen. Vielleicht hilft " 35 | "Ihnen die Suchfunktion oder ein anderer Link auf dieser Seite." 36 | 37 | #: 404.php:26 38 | msgid "Most Used Categories" 39 | msgstr "Meistgenutzte Kategorien" 40 | 41 | #. translators: %1$s: smilie 42 | #: 404.php:34 43 | #, php-format 44 | msgid "Try looking in the monthly archives. %1$s" 45 | msgstr "Versuch es mal im monatlichen Archiv. %1$s" 46 | 47 | #: 500.php:15 48 | msgid "Internal Server Error" 49 | msgstr "Interner Server-Fehler" 50 | 51 | #: 500.php:20 52 | msgid "More Details" 53 | msgstr "Mehr Details" 54 | 55 | #: archive.php:41 index.php:38 56 | msgid "Nothing Found" 57 | msgstr "Nichts gefunden" 58 | 59 | #: archive.php:45 index.php:42 60 | msgid "" 61 | "It seems we can’t find what you’re looking for. Perhaps " 62 | "searching can help." 63 | msgstr "" 64 | "Es scheint, dass wir nicht finden können, was du suchst. Vielleicht kann die " 65 | "Suche helfen." 66 | 67 | #: assets/js/block-editor.js:47 includes/featured-image.php:91 68 | msgid "Use as post cover (full-width)" 69 | msgstr "Verwendung als Beitrags-Cover (volle Breite)" 70 | 71 | #: comments.php:16 72 | msgid "" 73 | "This post is password protected. Enter the password to view any comments." 74 | msgstr "" 75 | "Dieser Beitrag ist passwortgeschützt. Geben Sie das Passwort ein, um " 76 | "Kommentare anzuzeigen." 77 | 78 | #: comments.php:34 79 | #, php-format 80 | msgid "One thought on “%2$s”" 81 | msgid_plural "%1$s thoughts on “%2$s”" 82 | msgstr[0] "Ein Kommentar zu “%2$s”" 83 | msgstr[1] "%1$s Kommentare zu “%2$s”" 84 | 85 | #: comments.php:43 comments.php:63 86 | msgid "Comment navigation" 87 | msgstr "Kommentar Navigation" 88 | 89 | #: comments.php:44 comments.php:64 90 | msgid "← Older Comments" 91 | msgstr "← Ältere Kommentare" 92 | 93 | #: comments.php:45 comments.php:65 94 | msgid "Newer Comments →" 95 | msgstr "Neuere Kommentare →" 96 | 97 | #: comments.php:75 98 | msgid "Comments are closed." 99 | msgstr "Kommentare sind geschlossen." 100 | 101 | #: footer.php:31 102 | #, php-format 103 | msgid "This site is powered by %1$s and styled with the %2$s theme" 104 | msgstr "" 105 | 106 | #: functions.php:80 107 | msgid "Blue" 108 | msgstr "Blau" 109 | 110 | #: functions.php:85 111 | msgid "Lighter blue" 112 | msgstr "Helleres Blau" 113 | 114 | #: functions.php:90 115 | msgid "Blue jeans" 116 | msgstr "Blaue Jeans" 117 | 118 | #: functions.php:95 119 | msgid "Orioles orange" 120 | msgstr "Orioles Orange" 121 | 122 | #: functions.php:100 123 | msgid "USC gold" 124 | msgstr "USC-Gold" 125 | 126 | #: functions.php:105 127 | msgid "Gargoyle gas" 128 | msgstr "Gargoyle gas" 129 | 130 | #: functions.php:110 131 | msgid "Yellow" 132 | msgstr "Gelb" 133 | 134 | #: functions.php:115 135 | msgid "Android green" 136 | msgstr "Android Grün" 137 | 138 | #: functions.php:120 139 | msgid "White" 140 | msgstr "Weiß" 141 | 142 | #: functions.php:125 143 | msgid "Very light gray" 144 | msgstr "Sehr helles Grau" 145 | 146 | #: functions.php:130 147 | msgid "Very dark gray" 148 | msgstr "Sehr dunkles Grau" 149 | 150 | #: functions.php:140 header.php:58 151 | msgid "Primary Menu" 152 | msgstr "Hauptmenü" 153 | 154 | #: functions.php:239 155 | msgctxt "Theme starter content" 156 | msgid "Beach" 157 | msgstr "Strand" 158 | 159 | #: functions.php:243 160 | msgctxt "Theme starter content" 161 | msgid "Sea" 162 | msgstr "Meer" 163 | 164 | #: functions.php:247 165 | msgctxt "Theme starter content" 166 | msgid "Lights" 167 | msgstr "Lichter" 168 | 169 | #: functions.php:268 170 | msgid "Top Menu" 171 | msgstr "Top Menü" 172 | 173 | #: functions.php:302 174 | msgid "POSH Feed" 175 | msgstr "POSH-Feed" 176 | 177 | #: functions.php:449 178 | msgid "Edit" 179 | msgstr "Bearbeiten" 180 | 181 | #: functions.php:456 182 | msgid "Your comment is awaiting moderation." 183 | msgstr "Ihr Kommentar wartet auf Moderation." 184 | 185 | #. translators: 1: date, 2: time 186 | #: functions.php:462 187 | #, php-format 188 | msgid "%1$s at %2$s" 189 | msgstr "%1$s um %2$s" 190 | 191 | #: header.php:33 192 | msgid "Skip to content" 193 | msgstr "Zum Inhalt springen" 194 | 195 | #: image.php:63 templates/content-aside.php:23 templates/content-audio.php:23 196 | #: templates/content-chat.php:23 templates/content-gallery.php:23 197 | #: templates/content-image.php:23 templates/content-link.php:23 198 | #: templates/content-quote.php:23 templates/content-single.php:23 199 | #: templates/content-status.php:23 templates/content-video.php:23 200 | msgid "Pages:" 201 | msgstr "Seiten:" 202 | 203 | #: includes/customizer.php:12 204 | msgid "Advanced Settings" 205 | msgstr "Erweiterte Einstellungen" 206 | 207 | #: includes/customizer.php:13 208 | msgid "Enable/Disable some advanced Autonomie features." 209 | msgstr "Aktivieren/Deaktivieren Sie einige erweiterte Autonomie-Funktionen." 210 | 211 | #. translators: Separator between blog name and feed type in feed links 212 | #: includes/feed.php:59 213 | msgctxt "feed link" 214 | msgid "»" 215 | msgstr "»" 216 | 217 | #. translators: 1: blog name, 2: separator(raquo), 3: post title 218 | #: includes/feed.php:61 219 | #, php-format 220 | msgid "%1$s %2$s %3$s Comments Feed" 221 | msgstr "%1$s %2$s %3$s Kommentar-Feed" 222 | 223 | #. translators: 1: blog name, 2: separator(raquo), 3: category name 224 | #: includes/feed.php:63 225 | #, php-format 226 | msgid "%1$s %2$s %3$s Category Feed" 227 | msgstr "%1$s %2$s %3$s Kategorie-Feed" 228 | 229 | #. translators: 1: blog name, 2: separator(raquo), 3: tag name 230 | #: includes/feed.php:65 231 | #, php-format 232 | msgid "%1$s %2$s %3$s Tag Feed" 233 | msgstr "%1$s %2$s %3$s Tag-Feed" 234 | 235 | #. translators: 1: blog name, 2: separator(raquo), 3: term name, 4: taxonomy singular name 236 | #: includes/feed.php:67 237 | #, php-format 238 | msgid "%1$s %2$s %3$s %4$s Feed" 239 | msgstr "%1$s %2$s %3$s %4$s Feed" 240 | 241 | #. translators: 1: blog name, 2: separator(raquo), 3: author name 242 | #: includes/feed.php:69 243 | #, php-format 244 | msgid "%1$s %2$s Posts by %3$s Feed" 245 | msgstr "%1$s %2$s Beiträge von %3$s-Feed" 246 | 247 | #. translators: 1: blog name, 2: separator(raquo), 3: search phrase 248 | #: includes/feed.php:71 249 | #, php-format 250 | msgid "%1$s %2$s Search Results for “%3$s” Feed" 251 | msgstr "%1$s %2$s Suchergebnisse für “%3$s” Feed" 252 | 253 | #. translators: 1: blog name, 2: separator(raquo), 3: post type 254 | #: includes/feed.php:73 255 | #, php-format 256 | msgid "%1$s %2$s %3$s Post-Type Feed" 257 | msgstr "%1$s %2$s %3$s Post-Type-Feed" 258 | 259 | #: includes/semantics.php:123 260 | #, php-format 261 | msgid "User Avatar of %s" 262 | msgstr "Benutzerbild von %s" 263 | 264 | #: includes/semantics.php:125 265 | msgid "User Avatar" 266 | msgstr "Benutzerbild" 267 | 268 | #: includes/template-functions.php:13 269 | msgid "Post navigation" 270 | msgstr "Beitragsnavigation" 271 | 272 | #. translators: 273 | #: includes/template-functions.php:34 274 | #, php-format 275 | msgid "View all posts by %s" 276 | msgstr "Zeige alle Beiträge von %s" 277 | 278 | #. translators: The title of the search results page 279 | #: includes/template-functions.php:152 280 | #, php-format 281 | msgid "Search Results for: %s" 282 | msgstr "Suchergebnisse für: %s" 283 | 284 | #: includes/template-functions.php:191 285 | msgid "Attachment" 286 | msgstr "Anhang" 287 | 288 | #: includes/template-functions.php:193 289 | msgid "Text" 290 | msgstr "Text" 291 | 292 | #. translators: list of followers 293 | #: includes/template-functions.php:248 294 | #, php-format 295 | msgid "%s Followers" 296 | msgstr "%s Follower" 297 | 298 | #. translators: a post counter 299 | #: includes/template-functions.php:250 300 | #, php-format 301 | msgid "%s Posts" 302 | msgstr "%s Beiträge" 303 | 304 | #: includes/template-functions.php:251 305 | msgid "Subscribe" 306 | msgstr "Abonnieren" 307 | 308 | #. translators: Description for search results 309 | #: includes/template-functions.php:275 310 | #, php-format 311 | msgid "Found %1$s search result for <strong>%2$s</strong>." 312 | msgid_plural "Found %1$s search results for <strong>%2$s</strong>." 313 | msgstr[0] "%1$s Suchergebnis gefunden für <strong>%2$s</strong>." 314 | msgstr[1] "%1$s Suchergebnisse gefunden für <strong>%2$s</strong>." 315 | 316 | #: includes/template-functions.php:291 317 | #, php-format 318 | msgid "" 319 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" class=\"dt-duration" 320 | "\" itemprop=\"timeRequired\">%1$s minute</time> to read</span>" 321 | msgid_plural "" 322 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" class=\"dt-duration" 323 | "\" itemprop=\"timeRequired\">%1$s minutes</time> to read</span>" 324 | msgstr[0] "" 325 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" class=\"dt-duration" 326 | "\" itemprop=\"timeRequired\">%1$s Minute</time> zu lesen</span>" 327 | msgstr[1] "" 328 | "<span class=\"entry-duration\"><time datetime=\"PT%1$sM\" class=\"dt-duration" 329 | "\" itemprop=\"timeRequired\">%1$s Minuten</time> zu lesen</span>" 330 | 331 | #: includes/widgets.php:17 332 | msgid "Sidebar 1" 333 | msgstr "Seitenleiste 1" 334 | 335 | #: includes/widgets.php:19 336 | msgid "A sidebar area" 337 | msgstr "Ein Seitenleistenbereich" 338 | 339 | #: includes/widgets.php:29 340 | msgid "Sidebar 2" 341 | msgstr "Seitenleiste 2" 342 | 343 | #: includes/widgets.php:31 344 | msgid "A second sidebar area" 345 | msgstr "Ein zweiter Seitenleistenbereich" 346 | 347 | #: includes/widgets.php:41 348 | msgid "Sidebar 3" 349 | msgstr "Seitenleiste 3" 350 | 351 | #: includes/widgets.php:43 352 | msgid "A third sidebar area" 353 | msgstr "Ein dritter Seitenleistenbereich" 354 | 355 | #: includes/widgets.php:53 356 | msgid "Entry-Meta" 357 | msgstr "Entry-Meta" 358 | 359 | #: includes/widgets.php:55 360 | msgid "Extend the Entry-Meta" 361 | msgstr "Erweitere die Entry-Meta" 362 | 363 | #. translators: how to follow 364 | #: integrations/activitypub.php:23 365 | #, php-format 366 | msgid "" 367 | "<indie-action do=\"follow\" width=\"%1$s\">Follow <code>%2$s</code> " 368 | "(fediverse)</indie-action>" 369 | msgstr "" 370 | "<indie-action do=\"follow\" width=\"%1$s\">Folgen <code>%2$s</code> " 371 | "(fediverse)</indie-action>" 372 | 373 | #: integrations/syndication-links.php:34 374 | msgid "Syndication Links" 375 | msgstr "Syndizierungs-Links" 376 | 377 | #: offline.php:15 378 | msgid "Offline" 379 | msgstr "Offline" 380 | 381 | #: template-parts/entry-author.php:7 382 | msgid "Subscribe to author feed" 383 | msgstr "Autorenfeed abonnieren" 384 | 385 | #: template-parts/entry-footer.php:11 386 | msgid "Leave a comment" 387 | msgstr "Hinterlasse einen Kommentar" 388 | 389 | #: template-parts/entry-footer.php:11 390 | msgid "1 Comment" 391 | msgstr "1 Kommentar" 392 | 393 | #: template-parts/entry-footer.php:11 394 | msgid "% Comments" 395 | msgstr "% Kommentare" 396 | 397 | #: template-parts/entry-header.php:23 398 | #, php-format 399 | msgid "Permalink to %s" 400 | msgstr "Permalink zu %s" 401 | 402 | #: template-parts/entry-share.php:3 403 | msgid "share" 404 | msgstr "Teilen" 405 | 406 | #: template-parts/entry-share.php:10 407 | msgid "Shortlink" 408 | msgstr "Kurz-URL" 409 | 410 | #: template-parts/entry-share.php:14 411 | msgid "Permalink" 412 | msgstr "Permalink" 413 | 414 | #: template-parts/entry-share.php:22 template-parts/entry-share.php:27 415 | msgid "HTML" 416 | msgstr "HTML" 417 | 418 | #: template-parts/entry-taxonomy.php:7 419 | msgid "Categories" 420 | msgstr "Kategorien" 421 | 422 | #: template-parts/entry-taxonomy.php:8 template-parts/entry-taxonomy.php:19 423 | #, php-format 424 | msgid "%1$s" 425 | msgstr "%1$s" 426 | 427 | #: template-parts/entry-taxonomy.php:18 428 | msgid "Tags" 429 | msgstr "Schlagwörter" 430 | 431 | #: templates/content-aside.php:22 templates/content-audio.php:22 432 | #: templates/content-chat.php:22 templates/content-gallery.php:22 433 | #: templates/content-image.php:22 templates/content-link.php:22 434 | #: templates/content-quote.php:22 templates/content-single.php:22 435 | #: templates/content-status.php:22 templates/content-video.php:22 436 | msgid "Continue reading <span class=\"meta-nav\">→</span>" 437 | msgstr "Weiterlesen <span class=\"meta-nav\">→</span>" 438 | 439 | #. Theme Name of the plugin/theme 440 | msgid "Autonomie" 441 | msgstr "Autonomie" 442 | 443 | #. Theme URI of the plugin/theme 444 | msgid "https://github.com/pfefferle/Autonomie" 445 | msgstr "https://github.com/pfefferle/Autonomie" 446 | 447 | #. Description of the plugin/theme 448 | msgid "" 449 | "Autonomie is a highly semantic, responsive, accessible and seo optimized " 450 | "WordPress Theme. It provides HTML5 templates refined with microformats, " 451 | "microformats v2 and microdata (Schema.org). Autonomie supports a lot of " 452 | "OpenWeb plugins and is fully IndieWeb compatible." 453 | msgstr "" 454 | "Autonomie ist ein hochgradig semantisches, reaktionsschnelles, zugängliches " 455 | "und SEO-optimiertes WordPress-Theme. Es bietet HTML5-Vorlagen, die mit " 456 | "Mikroformaten, Mikroformaten v2 und Mikrodaten (Schema.org) verfeinert " 457 | "wurden. Autonomie unterstützt viele OpenWeb-Plugins und ist vollständig " 458 | "IndieWeb-kompatibel." 459 | 460 | #. Author of the plugin/theme 461 | msgid "Matthias Pfefferle" 462 | msgstr "Matthias Pfefferle" 463 | 464 | #. Author URI of the plugin/theme 465 | msgid "https://notiz.blog/" 466 | msgstr "https://notiz.blog/" 467 | 468 | #. Template Name of the plugin/theme 469 | msgid "\"/now\" Template" 470 | msgstr "Vorlage \"/now\"" 471 | 472 | #~ msgid "Feed Templates" 473 | #~ msgstr "Feed-Vorlagen" 474 | -------------------------------------------------------------------------------- /languages/nl_NL.po: -------------------------------------------------------------------------------- 1 | # <!=Copyright (C) 2020 Matthias Pfefferle 2 | # This file is distributed under the MIT.=!> 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Autonomie 1.0.0-beta-2\n" 6 | "Report-Msgid-Bugs-To: https://wordpress.org/support/theme/ZenPress\n" 7 | "POT-Creation-Date: 2020-07-21 13:28:10+00:00\n" 8 | "MIME-Version: 1.0\n" 9 | "Content-Type: text/plain; charset=UTF-8\n" 10 | "Content-Transfer-Encoding: 8bit\n" 11 | "PO-Revision-Date: 2020-08-10 13:28+0000\n" 12 | "Last-Translator: Robert van Bregt\n" 13 | "Language-Team: Nederlands\n" 14 | "X-Generator: Loco https://localise.biz/\n" 15 | "Language: nl_NL\n" 16 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 17 | "X-Loco-Version: 2.4.1; wp-5.4.2" 18 | 19 | #: 404.php:15 20 | msgid "Well this is somewhat embarrassing, isn’t it?" 21 | msgstr "Dit is een beetje beschamend, niet?" 22 | 23 | #: 404.php:19 24 | msgid "" 25 | "It seems we can’t find what you’re looking for. Perhaps " 26 | "searching, or one of the links below, can help." 27 | msgstr "" 28 | "Het lijkt er op dat we niet kunnen vinden waar je naar op zoek bent. " 29 | "Misschien kan zoeken helpen, of een van onderstaande koppelingen." 30 | 31 | #: 404.php:26 32 | msgid "Most Used Categories" 33 | msgstr "Meestgebruikte categorieën" 34 | 35 | #. translators: %1$s: smilie 36 | #: 404.php:34 37 | msgid "Try looking in the monthly archives. %1$s" 38 | msgstr "Probeer te kijken in de maandarchieven. %1$s" 39 | 40 | #: 500.php:15 41 | msgid "Internal Server Error" 42 | msgstr "Interne serverfout" 43 | 44 | #: 500.php:20 45 | msgid "More Details" 46 | msgstr "Meer details" 47 | 48 | #: archive.php:41 index.php:38 49 | msgid "Nothing Found" 50 | msgstr "Niets gevonden" 51 | 52 | #: archive.php:45 index.php:42 53 | msgid "" 54 | "It seems we can’t find what you’re looking for. Perhaps " 55 | "searching can help." 56 | msgstr "" 57 | "Het lijkt er op dat we niet kunnen vinden waar je naar op zoek bent. " 58 | "Misschien kan zoeken helpen." 59 | 60 | #: comments.php:16 61 | msgid "" 62 | "This post is password protected. Enter the password to view any comments." 63 | msgstr "" 64 | "Dit bericht is beveiligd met een wachtwoord. Voer het wachtwoord in om " 65 | "reacties te bekijken." 66 | 67 | #: comments.php:34 68 | msgid "One thought on “%2$s”" 69 | msgid_plural "%1$s thoughts on “%2$s”" 70 | msgstr[0] "Eén gedachte over “%2$s”" 71 | msgstr[1] "%1$s gedachten over “%2$s”" 72 | 73 | #: comments.php:43 comments.php:63 74 | msgid "Comment navigation" 75 | msgstr "Reactienavigatie" 76 | 77 | #: comments.php:44 comments.php:64 78 | msgid "← Older Comments" 79 | msgstr "← Oudere reacties" 80 | 81 | #: comments.php:45 comments.php:65 82 | msgid "Newer Comments →" 83 | msgstr "Nieuwere reacties →" 84 | 85 | #: comments.php:75 86 | msgid "Comments are closed." 87 | msgstr "Reacties zijn gesloten." 88 | 89 | #: footer.php:31 90 | msgid "This site is powered by %1$s and styled with the %2$s theme" 91 | msgstr "Deze site wordt aangestuurd door %1$s en opgemaakt met het %2$s thema" 92 | 93 | #: functions.php:79 94 | msgid "Blue" 95 | msgstr "Blauw" 96 | 97 | #: functions.php:84 98 | msgid "Lighter blue" 99 | msgstr "Lichter blauw" 100 | 101 | #: functions.php:89 102 | msgid "Blue jeans" 103 | msgstr "Spijkerbroek" 104 | 105 | #: functions.php:94 106 | msgid "Orioles orange" 107 | msgstr "Orioles oranje" 108 | 109 | #: functions.php:99 110 | msgid "USC gold" 111 | msgstr "USC goud" 112 | 113 | #: functions.php:104 114 | msgid "Gargoyle gas" 115 | msgstr "Gargoyle gas" 116 | 117 | #: functions.php:109 118 | msgid "Yellow" 119 | msgstr "Geel" 120 | 121 | #: functions.php:114 122 | msgid "Android green" 123 | msgstr "Android-groen" 124 | 125 | #: functions.php:119 126 | msgid "White" 127 | msgstr "Wit" 128 | 129 | #: functions.php:124 130 | msgid "Very light gray" 131 | msgstr "Zeer lichtgrijs" 132 | 133 | #: functions.php:129 134 | msgid "Very dark gray" 135 | msgstr "Zeer donkergrijs" 136 | 137 | #: functions.php:139 header.php:58 138 | msgid "Primary Menu" 139 | msgstr "Hoofdmenu" 140 | 141 | #: functions.php:224 142 | msgid "POSH Feed" 143 | msgstr "POSH Feed" 144 | 145 | #: functions.php:391 146 | msgid "Edit" 147 | msgstr "Bewerken" 148 | 149 | #: functions.php:398 150 | msgid "Your comment is awaiting moderation." 151 | msgstr "Je bericht wacht op moderatie." 152 | 153 | #. translators: 1: date, 2: time 154 | #: functions.php:404 155 | msgid "%1$s at %2$s" 156 | msgstr "%1$s om %2$s" 157 | 158 | #: header.php:33 159 | msgid "Skip to content" 160 | msgstr "Spring naar inhoud" 161 | 162 | #: image.php:63 templates/content-aside.php:23 templates/content-audio.php:23 163 | #: templates/content-chat.php:23 templates/content-gallery.php:23 164 | #: templates/content-image.php:23 templates/content-link.php:23 165 | #: templates/content-quote.php:23 templates/content-single.php:23 166 | #: templates/content-status.php:23 templates/content-video.php:23 167 | msgid "Pages:" 168 | msgstr "Pagina's:" 169 | 170 | #: includes/customizer.php:12 171 | msgid "Advanced Settings" 172 | msgstr "Geavanceerde instellingen" 173 | 174 | #: includes/customizer.php:13 175 | msgid "Enable/Discable some advanced Autonomie features." 176 | msgstr "In/uitschakelen enkele geavanceerde mogelijkheden van Autonomie." 177 | 178 | #: includes/customizer.php:30 179 | msgid "Feed Templates" 180 | msgstr "Feed-sjablonen" 181 | 182 | #: includes/customizer.php:31 183 | msgid "" 184 | "Enable/Discable XSL Templates for Feeds, similar to the old Feedburner " 185 | "Templates." 186 | msgstr "" 187 | "In/uitschakelen XSL-sjablonen voor Feeds, vergelijkbaar met de oude " 188 | "Feedburner-sjablonen." 189 | 190 | #: includes/featured-image.php:74 191 | msgid "Use as post cover (full-width)" 192 | msgstr "Gebruik als berichtomslag (volledige breedte)" 193 | 194 | #. translators: 1: blog name, 2: separator(raquo), 3: post title 195 | #: includes/feed.php:61 196 | msgid "%1$s %2$s %3$s Comments Feed" 197 | msgstr "%1$s %2$s %3$s Reacties-feed" 198 | 199 | #. translators: 1: blog name, 2: separator(raquo), 3: category name 200 | #: includes/feed.php:63 201 | msgid "%1$s %2$s %3$s Category Feed" 202 | msgstr "%1$s %2$s %3$s Categorie-feed" 203 | 204 | #. translators: 1: blog name, 2: separator(raquo), 3: tag name 205 | #: includes/feed.php:65 206 | msgid "%1$s %2$s %3$s Tag Feed" 207 | msgstr "%1$s %2$s %3$s Label-feed" 208 | 209 | #. translators: 1: blog name, 2: separator(raquo), 3: term name, 4: taxonomy 210 | #. singular name 211 | #: includes/feed.php:67 212 | msgid "%1$s %2$s %3$s %4$s Feed" 213 | msgstr "%1$s %2$s %3$s %4$s Feed" 214 | 215 | #. translators: 1: blog name, 2: separator(raquo), 3: author name 216 | #: includes/feed.php:69 217 | msgid "%1$s %2$s Posts by %3$s Feed" 218 | msgstr "%1$s %2$s Berichten door %3$s Feed" 219 | 220 | #. translators: 1: blog name, 2: separator(raquo), 3: search phrase 221 | #: includes/feed.php:71 222 | msgid "%1$s %2$s Search Results for “%3$s” Feed" 223 | msgstr "%1$s %2$s Zoekresultaten voor “%3$s” Feed" 224 | 225 | #. translators: 1: blog name, 2: separator(raquo), 3: post type 226 | #: includes/feed.php:73 227 | msgid "%1$s %2$s %3$s Post-Type Feed" 228 | msgstr "%1$s %2$s %3$s Berichttype-feed" 229 | 230 | #: includes/template-functions.php:13 231 | msgid "Post navigation" 232 | msgstr "Berichtnavigatie" 233 | 234 | #. translators: 235 | #: includes/template-functions.php:32 includes/template-functions.php:57 236 | msgid "" 237 | "<address class=\"byline\"><span class=\"author p-author vcard hcard h-card\" " 238 | "itemprop=\"author\" itemscope itemtype=\"https://schema.org/Person\">%5$s <a " 239 | "class=\"url uid u-url u-uid fn p-name\" href=\"%6$s\" title=\"%7$s\" " 240 | "rel=\"author\" itemprop=\"url\"><span itemprop=\"name\">%8$s</span></a>" 241 | "</span></address> <span class=\"sep\"> | </span> <a href=\"%1$s\" " 242 | "title=\"%2$s\" rel=\"bookmark\" class=\"url u-url\" " 243 | "itemprop=\"mainEntityOfPage\"><time class=\"entry-date updated published dt-" 244 | "updated dt-published\" datetime=\"%3$s\" itemprop=\"dateModified " 245 | "datePublished\">%4$s</time></a>" 246 | msgstr "" 247 | "<address class=\"byline\"><span class=\"author p-author vcard hcard h-card\" " 248 | "itemprop=\"author\" itemscope itemtype=\"https://schema.org/Person\">%5$s <a " 249 | "class=\"url uid u-url u-uid fn p-name\" href=\"%6$s\" title=\"%7$s\" " 250 | "rel=\"author\" itemprop=\"url\"><span itemprop=\"name\">%8$s</span></a>" 251 | "</span></address> <span class=\"sep\"> | </span> <a href=\"%1$s\" " 252 | "title=\"%2$s\" rel=\"bookmark\" class=\"url u-url\" " 253 | "itemprop=\"mainEntityOfPage\"><time class=\"entry-date updated published dt-" 254 | "updated dt-published\" datetime=\"%3$s\" itemprop=\"dateModified " 255 | "datePublished\">%4$s</time></a>" 256 | 257 | #. translators: 258 | #: includes/template-functions.php:40 includes/template-functions.php:65 259 | msgid "View all posts by %s" 260 | msgstr "Bekijk alle berichten door %s" 261 | 262 | #. translators: The title of the search results page 263 | #: includes/template-functions.php:137 264 | msgid "Search Results for: %s" 265 | msgstr "Zoekresultaten voor: %s" 266 | 267 | #: includes/template-functions.php:176 268 | msgid "Attachment" 269 | msgstr "Bijlage" 270 | 271 | #: includes/template-functions.php:178 272 | msgid "Text" 273 | msgstr "Tekst" 274 | 275 | #. translators: list of followers 276 | #: includes/template-functions.php:232 277 | msgid "%s Followers" 278 | msgstr "%s Volgers" 279 | 280 | #. translators: a post counter 281 | #: includes/template-functions.php:234 282 | msgid "%s Posts" 283 | msgstr "%s Berichten" 284 | 285 | #: includes/template-functions.php:235 286 | msgid "Subscribe" 287 | msgstr "Abonneren" 288 | 289 | #. translators: Description for search results 290 | #: includes/template-functions.php:259 291 | msgid "Found %1$s search result for <strong>%2$s</strong>." 292 | msgid_plural "Found %1$s search results for <strong>%2$s</strong>." 293 | msgstr[0] "%1$s zoekresultaat gevonden voor <strong>%2$s</strong>." 294 | msgstr[1] "%1$s zoekresultaten gevonden voor <strong>%2$s</strong>." 295 | 296 | #: includes/widgets.php:7 297 | msgid "Sidebar 1" 298 | msgstr "Zijbalk 1" 299 | 300 | #: includes/widgets.php:9 301 | msgid "A sidebar area" 302 | msgstr "Een zijbalkgebied" 303 | 304 | #: includes/widgets.php:17 305 | msgid "Sidebar 2" 306 | msgstr "Zijbalk 2" 307 | 308 | #: includes/widgets.php:19 309 | msgid "A second sidebar area" 310 | msgstr "Een tweede zijbalkgebied" 311 | 312 | #: includes/widgets.php:27 313 | msgid "Sidebar 3" 314 | msgstr "Zijbalk 3" 315 | 316 | #: includes/widgets.php:29 317 | msgid "A third sidebar area" 318 | msgstr "Een derde zijbalkgebied" 319 | 320 | #: includes/widgets.php:37 321 | msgid "Entry-Meta" 322 | msgstr "Entry-Meta" 323 | 324 | #: includes/widgets.php:39 325 | msgid "Extend the Entry-Meta" 326 | msgstr "Entry-Meta uitbreiden" 327 | 328 | #. translators: how to follow 329 | #: integrations/activitypub.php:23 330 | msgid "" 331 | "<indie-action do=\"follow\" width=\"%1$s\">Follow <code>%2$s</code> " 332 | "(fediverse)</indie-action>" 333 | msgstr "" 334 | "<indie-action do=\"follow\" width=\"%1$s\">Volgen <code>%2$s</code> " 335 | "(fediverse)</indie-action>" 336 | 337 | #: integrations/syndication-links.php:34 338 | msgid "Syndication Links" 339 | msgstr "Syndicatiekoppelingen" 340 | 341 | #: offline.php:15 342 | msgid "Offline" 343 | msgstr "Offline" 344 | 345 | #: template-parts/entry-footer.php:9 346 | msgid "Subscribe to author feed" 347 | msgstr "Abonneer op auteurfeed" 348 | 349 | #. translators: used between list items, there is a space after the comma 350 | #: template-parts/entry-footer.php:18 351 | msgid "Categories" 352 | msgstr "Categorieën" 353 | 354 | #: template-parts/entry-footer.php:19 template-parts/entry-footer.php:30 355 | msgid "%1$s" 356 | msgstr "%1$s" 357 | 358 | #. translators: used between list items, there is a space after the comma 359 | #: template-parts/entry-footer.php:29 360 | msgid "Tags" 361 | msgstr "Labels" 362 | 363 | #: template-parts/entry-footer.php:42 364 | msgid "Leave a comment" 365 | msgstr "Laat een reactie achter" 366 | 367 | #: template-parts/entry-footer.php:42 368 | msgid "1 Comment" 369 | msgstr "1 Reactie" 370 | 371 | #: template-parts/entry-footer.php:42 372 | msgid "% Comments" 373 | msgstr "% Reacties" 374 | 375 | #: template-parts/entry-header.php:16 376 | msgid "Permalink to %s" 377 | msgstr "Permalink naar %s" 378 | 379 | #: template-parts/page-banner.php:11 380 | msgid "The ... Feed" 381 | msgstr "The ... Feed" 382 | 383 | #: templates/content-aside.php:22 templates/content-audio.php:22 384 | #: templates/content-chat.php:22 templates/content-gallery.php:22 385 | #: templates/content-image.php:22 templates/content-link.php:22 386 | #: templates/content-quote.php:22 templates/content-single.php:22 387 | #: templates/content-status.php:22 templates/content-video.php:22 388 | msgid "Continue reading <span class=\"meta-nav\">→</span>" 389 | msgstr "Lees verder <span class=\"meta-nav\">→</span>" 390 | 391 | #: templates/feed-template-atom.php:79 templates/feed-template-rss2.php:78 392 | msgid "This feed is powered by %1$s and styled with the %2$s theme" 393 | msgstr "Deze feed wordt aangestuurd door %1$s en opgemaakt met het %2$s thema" 394 | 395 | #. Theme Name of the plugin/theme 396 | msgid "Autonomie" 397 | msgstr "Autonomie" 398 | 399 | #. Theme URI of the plugin/theme 400 | msgid "https://github.com/pfefferle/Autonomie" 401 | msgstr "https://github.com/pfefferle/Autonomie" 402 | 403 | #. Description of the plugin/theme 404 | msgid "" 405 | "Autonomie is a highly semantic, responsive, accessible and seo optimized " 406 | "WordPress Theme. It provides HTML5 templates refined with microformats, " 407 | "microformats v2 and microdata (Schema.org). Autonomie supports a lot of " 408 | "OpenWeb plugins and is fully IndieWeb compatible." 409 | msgstr "" 410 | "Autonomie is een zeer semantisch, responsive, toegankelijk and SEO-" 411 | "geoptimaliseerd WordPress-thema. Het biedt HTML5-sjablonen, verfijnd met " 412 | "microformats v2 en microdata (Schema.org). Autonomie ondersteunt veel " 413 | "OpenWeb-plugins en is volledig IndieWeb-compatibel." 414 | 415 | #. Author of the plugin/theme 416 | msgid "Matthias Pfefferle" 417 | msgstr "Matthias Pfefferle" 418 | 419 | #. Author URI of the plugin/theme 420 | msgid "https://notiz.blog/" 421 | msgstr "https://notiz.blog/" 422 | 423 | #. Template Name of the plugin/theme 424 | msgid "\"/now\" Template" 425 | msgstr "\"/now\" Sjabloon" 426 | 427 | #. translators: Separator between blog name and feed type in feed links 428 | #: includes/feed.php:59 429 | msgctxt "feed link" 430 | msgid "»" 431 | msgstr "»" 432 | -------------------------------------------------------------------------------- /offline.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying 404 pages (Not Found). 4 | * 5 | * @package Autonomie 6 | * @since Autonomie 1.0.0 7 | */ 8 | 9 | get_header(); ?> 10 | 11 | <main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>> 12 | 13 | <article id="post-0" class="post error offline"> 14 | <header class="entry-header"> 15 | <h1 class="entry-title p-name"><?php _e( 'Offline', 'autonomie' ); ?></h1> 16 | </header> 17 | 18 | <div class="entry-content e-content"> 19 | <p><?php wp_service_worker_error_message_placeholder(); ?></p> 20 | </div><!-- .entry-content --> 21 | </article><!-- #post-0 --> 22 | 23 | </main><!-- #content --> 24 | 25 | <?php get_footer(); ?> 26 | -------------------------------------------------------------------------------- /page-now.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * Template Name: "/now" Template 4 | * 5 | * The template for displaying "/now" pages. 6 | * 7 | * This is the template that displays all pages by default. 8 | * Please note that this is the WordPress construct of pages 9 | * and that other 'pages' on your WordPress site will use a 10 | * different template. 11 | * 12 | * @package Autonomie 13 | * @since Autonomie 1.0.0 14 | */ 15 | 16 | set_query_var( 'is_now', true ); 17 | 18 | get_header(); ?> 19 | 20 | <main id="primary" <?php autonomie_main_class( 'h-now' ); ?><?php autonomie_semantics( 'main' ); ?>> 21 | 22 | <?php while ( have_posts() ) : the_post(); ?> 23 | 24 | <?php get_template_part( 'templates/content', 'page' ); ?> 25 | 26 | <?php comments_template( '', true ); ?> 27 | 28 | <?php endwhile; // end of the loop. ?> 29 | 30 | </main><!-- #content --> 31 | 32 | <?php get_footer(); ?> 33 | -------------------------------------------------------------------------------- /page.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying all pages. 4 | * 5 | * This is the template that displays all pages by default. 6 | * Please note that this is the WordPress construct of pages 7 | * and that other 'pages' on your WordPress site will use a 8 | * different template. 9 | * 10 | * @package Autonomie 11 | * @since Autonomie 1.0.0 12 | */ 13 | 14 | get_header(); ?> 15 | 16 | <main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>> 17 | 18 | <?php while ( have_posts() ) : the_post(); ?> 19 | 20 | <?php get_template_part( 'templates/content', 'page' ); ?> 21 | 22 | <?php comments_template( '', true ); ?> 23 | 24 | <?php endwhile; // end of the loop. ?> 25 | 26 | </main><!-- #content --> 27 | 28 | <?php get_footer(); ?> 29 | -------------------------------------------------------------------------------- /readme.txt: -------------------------------------------------------------------------------- 1 | === Autonomie === 2 | Contributors: pfefferle 3 | Tags: custom-menu, custom-colors, custom-header, custom-logo, featured-image-header, flexible-header, sticky-post, microformats, rtl-language-support, translation-ready, full-width-template, post-formats, threaded-comments, footer-widgets, one-column, editor-style, featured-images, theme-options, blog, news, photography, entertainment, wide-blocks 4 | Requires at least: 4.0 5 | Tested up to: 5.5 6 | Stable tag: 1.0.0 7 | Requires PHP: 5.6 8 | Author: Matthias Pfefferle 9 | Author URI: https://notiz.blog/ 10 | Donate link: https://notiz.blog/donate/ 11 | License: MIT 12 | License URI: https://opensource.org/licenses/mit 13 | 14 | Autonomie is a highly semantic, responsive, accessible and search engine optimized WordPress Theme. It provides HTML5 templates refined with microformats, microformats2 and microdata (Schema.org). Autonomie supports a lot of OpenWeb plugins and is fully IndieWeb compatible. 15 | 16 | == Description == 17 | 18 | "Autonomie" is a "living theme". I use it for my own blog and so it may change completely over time. Why Autonomie? 19 | 20 | "Autonomie" is the german word for "autonomy" which is a synonym to independent! 21 | 22 | The theme is based on the (in the IndieWeb community) popular SemPress Theme - <https://github.com/pfefferle/SemPress> 23 | 24 | = Thanks = 25 | 26 | * Greg Tangey ([Ruxton](https://github.com/Ruxton)) - for the "Post Kinds" and "Syndication Links" implementations 27 | 28 | == Frequently Asked Questions == 29 | 30 | = Supported Plugins = 31 | 32 | * Post Kinds: <https://wordpress.org/plugins/indieweb-post-kinds/> 33 | * Syndication Links: <https://wordpress.org/plugins/syndication-links/> 34 | * ActivityPub: <https://wordpress.org/plugins/activitypub/> 35 | * PWA: <https://wordpress.org/plugins/pwa/> 36 | 37 | = How to install/update the theme = 38 | 39 | **Composer** 40 | 41 | Install: 42 | 43 | $ composer require pfefferle/wordpress-autonomie --save 44 | 45 | Update: 46 | 47 | $ composer update 48 | 49 | **GitHub Updater** 50 | 51 | You can also use the [GitHub Updater](https://github.com/afragen/github-updater) plugin to install and update the theme. 52 | 53 | = Supported Websemantics = 54 | 55 | Autonomie' code is marked-up with microformats and microdata: 56 | 57 | * used [microformats](http://microformats.org/): 58 | * [hAtom](http://microformats.org/wiki/hatom) 59 | * [hCard](http://microformats.org/wiki/hcard) 60 | * [rel-tag](http://microformats.org/wiki/rel-tag) 61 | * [XFN](http://microformats.org/wiki/xfn) 62 | * used [microformats version 2](http://microformats.org/wiki/microformats-2): 63 | * [h-feed](http://microformats.org/wiki/h-feed)/[h-entry](http://microformats.org/wiki/h-entry) 64 | * [h-card](http://microformats.org/wiki/h-card) 65 | * [Comment Draft](http://microformats.org/wiki/comment-brainstorming#microformats2_h-feed_p-comments) 66 | * used [microdata](http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html): 67 | * https://schema.org/Blog 68 | * https://schema.org/BlogPosting 69 | * https://schema.org/Comment 70 | * https://schema.org/WebPage 71 | * https://schema.org/Person 72 | 73 | Planned formats: 74 | 75 | * micormats (v2): hAudio and hMedia 76 | * microdata: https://schema.org/MediaObject 77 | 78 | = IndieWeb Specs = 79 | 80 | * [Webactions](https://indieweb.org/webactions) - A web action is the interface and user experience of taking a specific discrete action, across the web, from one site to another site or application. 81 | 82 | = What are the WordPress features supported by Autonomie? = 83 | 84 | Autonomie supports: 85 | 86 | * [Custom Post Formats](http://codex.wordpress.org/Post_Formats): aside, status, gallery, video, audio, chat, quote, link and image 87 | * [Post-Thumbnails](http://codex.wordpress.org/Post_Thumbnails) 88 | * [Editor-Style](http://codex.wordpress.org/Function_Reference/add_editor_style) 89 | * [Navigation Menus](http://codex.wordpress.org/Navigation_Menus) 90 | * [Automatic Feed Links](http://codex.wordpress.org/Automatic_Feed_Links) 91 | * [Custom-Header](http://codex.wordpress.org/Custom_Headers) 92 | * [Custom-Backgrounds](http://codex.wordpress.org/Custom_Backgrounds) 93 | * [Gutenberg/Block-Editor](https://wordpress.org/gutenberg/) 94 | * [Editor Colors](https://wordpress.org/gutenberg/handbook/extensibility/theme-support/) 95 | * [Wide Alignment](https://wordpress.org/gutenberg/handbook/extensibility/theme-support/#wide-alignment ) 96 | 97 | 98 | = What is POSH = 99 | 100 | From the [micrormats wiki](http://microformats.org/wiki/posh): 101 | 102 | > The term semantic-html is a mouthful, and belies both how simple it is, how well established 103 | > it is among modern web designers, and the fact that it has benefits far beyond the obvious doing 104 | > the right thing for the Web by using semantic markup. We need a simple short mnemonic term that 105 | > captures the essence of the concept, and is easily verbed (to posh, poshify, poshed up). 106 | 107 | Autonomie is fully HTML5 compatible and uses a lot of the new tags, semantics and input-types. 108 | 109 | == Changelog == 110 | 111 | = 1.0.0 = 112 | 113 | * initial release 114 | 115 | == Copyright == 116 | 117 | Autonomie is distributed under the terms of the MIT License 118 | 119 | Copyright (c) 2021 Matthias Pfefferle 120 | 121 | Permission is hereby granted, free of charge, to any person obtaining a copy 122 | of this software and associated documentation files (the "Software"), to deal 123 | in the Software without restriction, including without limitation the rights 124 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 125 | copies of the Software, and to permit persons to whom the Software is 126 | furnished to do so, subject to the following conditions: 127 | 128 | The above copyright notice and this permission notice shall be included in all 129 | copies or substantial portions of the Software. 130 | 131 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 132 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 133 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 134 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 135 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 136 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 137 | SOFTWARE. 138 | 139 | Autonomie bundles the following third-party resources: 140 | 141 | Some Bootstrap CSS, Copyright Twitter, Inc., The Bootstrap Authors 142 | License: MIT 143 | Source: https://github.com/twbs/bootstrap/ 144 | 145 | Bundled images (starter content), Copyright Hendrik Cvetko 146 | License: GPL-2.0-or-later 147 | -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pfefferle/autonomie/5aa70a5df068662d78180465a38644a0cf54c9fd/screenshot.png -------------------------------------------------------------------------------- /sidebar.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The Sidebar containing the main widget areas. 4 | * 5 | * @package Autonomie 6 | * @since Autonomie 1.0.0 7 | */ 8 | ?> 9 | <div id="sidebar"> 10 | <?php do_action( 'before_sidebar' ); ?> 11 | 12 | <div id="secondary" class="widget-area" role="complementary"> 13 | <?php dynamic_sidebar( 'sidebar-1' ); ?> 14 | </div><!-- #secondary .widget-area --> 15 | 16 | <?php if ( is_active_sidebar( 'sidebar-2' ) ) : ?> 17 | <div id="tertiary" class="widget-area" role="complementary"> 18 | <?php dynamic_sidebar( 'sidebar-2' ); ?> 19 | </div><!-- #tertiary .widget-area --> 20 | <?php endif; ?> 21 | 22 | <?php if ( is_active_sidebar( 'sidebar-3' ) ) : ?> 23 | <div id="quaternary" class="widget-area" role="complementary"> 24 | <?php dynamic_sidebar( 'sidebar-3' ); ?> 25 | </div><!-- #quaternary .widget-area --> 26 | <?php endif; ?> 27 | </div> 28 | -------------------------------------------------------------------------------- /single.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The Template for displaying all single posts. 4 | * 5 | * @package Autonomie 6 | * @since Autonomie 1.0.0 7 | */ 8 | 9 | get_header(); ?> 10 | 11 | <main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>> 12 | 13 | <?php while ( have_posts() ) : the_post(); ?> 14 | 15 | <?php get_template_part( 'templates/content', get_post_format() ); ?> 16 | 17 | <?php 18 | // If comments are open or we have at least one comment, load up the comment template 19 | if ( comments_open() || '0' !== get_comments_number() ) { 20 | comments_template( '', true ); 21 | } 22 | ?> 23 | 24 | <?php endwhile; // end of the loop. ?> 25 | 26 | </main><!-- #content --> 27 | 28 | <?php autonomie_content_nav( 'nav-below' ); ?> 29 | 30 | <?php get_footer(); ?> 31 | -------------------------------------------------------------------------------- /style.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["file:///Users/pfefferle/Code/autonomie/assets/sass/style.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/lato-font.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/merriweather-font.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/openwebicons.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_normalize.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_vars.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_page.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_mixins.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_comment.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_post.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_nav.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_table.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_media.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_sidebar.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_base.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_block.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_form.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_widgets.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/integrations.scss","file:///Users/pfefferle/Code/autonomie/assets/sass/_darkmode.scss"],"names":[],"mappings":"CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCCA,WACC,mBACA,kBACA,mBACA,kBACA,mDACA,gUAOD,WACC,mBACA,kBACA,mBACA,kBACA,yDACA,qWAOD,WACC,mBACA,kBACA,iBACA,kBACA,mDACA,8TAOD,WACC,mBACA,kBACA,iBACA,kBACA,yDACA,mWC7CD,WACC,2BACA,kBACA,mBACA,kBACA,mEACA,wZAQD,WACC,2BACA,kBACA,mBACA,kBACA,yEACA,6bAQD,WACC,2BACA,kBACA,iBACA,kBACA,yEACA,2bAOD,WACC,2BACA,kBACA,iBACA,kBACA,mEACA,sZCyEA,WACC,4BACA,qDACA,oXAKA,mBACA,kBACA,kBAoDF,+DACC,4BACA,mBACA,kBACA,kBACA,qBACA,qBACA,sBACA,WACA,2BACA,mCACA,kCACA,kCACA,iBAGD,qDACC,qBACA,wBAGD,qDACC,cAKA,0BACC,YADD,gCACC,YADD,uCACC,YADD,2BACC,YADD,kCACC,YADD,0BACC,YADD,iCACC,YADD,6BACC,YADD,oCACC,YADD,0BACC,YADD,8BACC,YADD,qCACC,YADD,kCACC,YADD,yBACC,YADD,gCACC,YADD,2BACC,YADD,4BACC,YADD,kCACC,YADD,yBACC,YADD,0BACC,YADD,yBACC,YADD,qCACC,YADD,+BACC,YADD,iCACC,YADD,8BACC,YADD,0BACC,YADD,2BACC,YADD,0BACC,YADD,kCACC,YADD,+BACC,YADD,+BACC,YADD,mCACC,YADD,gCACC,YADD,qCACC,YADD,qCACC,YADD,yBACC,YADD,8BACC,YADD,yBACC,YADD,gCACC,YADD,+BACC,YADD,0BACC,YADD,wBACC,YADD,0BACC,YADD,+BACC,YADD,+BACC,YADD,oCACC,YADD,6BACC,YADD,2BACC,YADD,8BACC,YADD,2BACC,YADD,yBACC,YADD,yBACC,YADD,4BACC,YADD,kCACC,YADD,wBACC,YADD,2BACC,YADD,2BACC,YADD,8BACC,YADD,8BACC,YADD,2BACC,YADD,2BACC,YADD,+BACC,YADD,6BACC,YADD,8BACC,YADD,8BACC,YADD,2BACC,YADD,6BACC,YADD,+BACC,YADD,oCACC,YADD,8BACC,aADD,kCACC,cADD,+BACC,YADD,6BACC,YADD,oCACC,YADD,yBACC,YADD,6BACC,YADD,0BACC,YADD,8BACC,YADD,yBACC,YADD,qCACC,YADD,+BACC,YADD,kCACC,YADD,iCACC,YADD,mCACC,YADD,gCACC,YADD,gCACC,YADD,2BACC,YADD,yBACC,YADD,+BACC,YADD,8BACC,YADD,0BACC,YADD,6BACC,YADD,kCACC,YADD,2BACC,YADD,6BACC,YADD,8BACC,YADD,8BACC,YADD,2BACC,YADD,2BACC,YADD,kCACC,YADD,sCACC,YADD,gCACC,YADD,+BACC,YADD,sCACC,YADD,8BACC,YADD,8BACC,YADD,6BACC,YADD,+BACC,YADD,8BACC,YADD,+BACC,YADD,qCACC,YADD,iCACC,YADD,2BACC,YADD,gCACC,YADD,+BACC,YAQA,kCACC,YACA,cAFD,wCACC,YACA,cAFD,mCACC,YACA,cAFD,kCACC,YACA,cAFD,qCACC,YACA,cAFD,kCACC,YACA,cAFD,sCACC,YACA,cAFD,0CACC,YACA,cAFD,iCACC,YACA,cAFD,wCACC,YACA,cAFD,mCACC,YACA,cAFD,iCACC,YACA,cAFD,iCACC,YACA,cAFD,wCACC,YACA,cAFD,kCACC,YACA,cAFD,uCACC,YACA,cAFD,4CACC,YACA,cAFD,mCACC,YACA,cAFD,iCACC,YACA,cAFD,iCACC,YACA,cAFD,oCACC,YACA,cAFD,wCACC,YACA,cAFD,uCACC,YACA,cAFD,sCACC,YACA,cAFD,6CACC,YACA,cC7NH,4DAQA,KACC,uBACA,0BACA,8BAOD,KACC,SAaD,2FAaC,cAQD,4BAIC,qBACA,wBAQD,sBACC,aACA,SAQD,kBAEC,aAUD,EACC,+BAOD,iBAEC,UAUD,YACC,yBAOD,SAEC,iBAOD,IACC,kBAQD,GACC,cACA,eAOD,KACC,gBACA,WAOD,MACC,cAOD,QAEC,cACA,cACA,kBACA,wBAGD,IACC,WAGD,IACC,eAUD,IACC,SAOD,eACC,gBAUD,OACC,gBAOD,GACC,4BACA,uBACA,SAOD,IACC,cAOD,kBAIC,gCACA,cAkBD,sCAKC,cACA,aACA,SAOD,OACC,iBAUD,cAEC,oBAWD,oEAIC,0BACA,eAOD,sCAEC,eAOD,iDAEC,SACA,UAQD,MACC,mBAWD,uCAEC,sBACA,UASD,4FAEC,YASD,mBACC,6BACA,4BACA,+BACA,uBASD,+FAEC,wBAOD,SACC,wBACA,aACA,2BAQD,OACC,SACA,UAOD,SACC,cAQD,SACC,iBAUD,MACC,yBACA,iBAGD,MAEC,UJ9XD,KACC,MKzCW,QL0CX,6BACA,cACA,gBAOD,6BAEC,mBACA,iBAMD,2BAKC,sBAKD,SACC,SACA,SACA,UAKD,SACC,gBAOD,6BAEC,WKvFM,QLwFN,6BACA,WACA,cACA,eM/FD,aACC,cACA,kBACA,WACA,gCAEA,4BACC,cACA,MDiCc,ME9Bf,qEAEC,YACA,cAGD,kCACC,WDLD,0BACC,gBACA,iBACA,mBAGD,yBACC,qBACA,UACA,qBACA,gBACA,8BACA,iBACA,gBAEA,2BACC,qBAEA,iCACC,0BAKH,0BACC,WACA,6BAEA,4BACC,MDvCS,QCwCT,6BAGD,yCACC,WACA,cAGD,gDACC,kBAEA,wDACC,cACA,mBACA,sBAGD,oPACC,kBAGD,4DACC,cACA,iBAGD,kEACC,iBAGD,sHACC,cACA,cAIF,4JACC,cACA,cACA,gBACA,MDhFS,QCiFT,6BACA,gBACA,MD9CU,MCiDX,qCACC,cAGD,sCACC,cAIF,0BACC,qBACA,qBACA,UACA,YAGD,oBACC,qBACA,YAKD,4BACC,WACA,kBACA,YACA,eACA,iBACA,8BACA,2BACA,yBACA,sBAEA,8BACC,MDzFK,KC4FN,6HACC,MD7FK,KCgGN,2CACC,kBACA,OACA,SACA,WAKH,SACC,WACA,cACA,cAGD,UACC,WACA,iBD3IiB,QC4IjB,8CACA,iBACA,wBC5IA,iCAEC,YACA,cAGD,gBACC,WD0IF,gBACC,WACA,eACA,kBACA,iBD7HO,KC8HP,oCAGD,oCAEC,2BAEA,8BACA,6BAKA,iCACC,WACA,UAEA,kFAEC,iBAIF,2CACC,WACA,WACA,WAKF,oCAEC,WD7LY,QC8LZ,mCACA,cACA,YAGD,QACC,0BACA,uBACA,kBE3MD,UACC,WAEA,mIAKC,cACA,UAGD,8EACC,eACA,iBAGD,gBACC,cAGD,+BACC,eAGD,gBACC,cACA,MHvBK,QGwBL,wBAGD,gBACC,aAGD,4BACC,aACA,cAIF,gBACC,cACA,kBACA,eACA,cAGD,4BACC,WACA,UAGD,iCACC,cAGD,mBACC,aAGD,wBACC,cAGD,6BAEC,UACA,SACA,cAGD,qBACC,eACA,YACA,iBAEA,4BACC,wBACA,YACA,kBACA,qBAIF,WACC,6BACA,aAEA,8BACC,kBACA,mBAGD,sBACC,WAIF,2CAGC,cACA,4BACA,MHpGM,QGqGN,wBAIA,sBACC,gBAGD,mBACC,eAIF,oDAGC,MHrHM,QGsHN,wBACA,qBAEA,sEACC,0BAIF,eACC,SACA,UAEA,uBACC,WACA,kBACA,WACA,YAIF,YACC,kBAGD,iBACC,gBACA,gBAEA,sBACC,kBACA,mBACA,eAOF,cACC,cAGD,iBACC,eAGD,YACC,kBACA,cCvKC,4GACC,eAMF,6CACC,SACA,WACA,eACA,kBACA,YACA,eACA,iBACA,mBACA,8BACA,2BACA,yBACA,sBAEA,8KACC,MJUK,KIRL,oLACC,MJOI,KIHN,2FACC,MJEK,KICN,mEACC,kBACA,OACA,SACA,WACA,mBAGD,qEACC,cACA,MJLa,MIQd,+EACC,gBAGD,qDACC,sBAKH,6BACC,gBAMC,6DACC,WACA,6BACA,YACA,cACA,kBACA,cACA,iBAKH,4DAIC,SACA,UAEA,cACA,kBAEA,oEACC,aACA,uBACA,gBACA,cACA,cACA,qBACA,MJ5FU,QI6FV,6BAEA,4FACC,0BAMF,wFACC,gBAMD,wOAIC,gBAIF,8BAEC,MJvHW,QIwHX,6BACA,kBACA,gBACA,cAEA,8HAEC,eACA,WAGD,oDACC,WACA,UJhGW,MImGZ,gEACC,WACA,eACA,oCACA,SAGD,kCACC,0BAEA,8CAHD,kCAIE,kCACA,qDACA,8BACA,2BAIA,8CADD,8CAEE,+BACA,gDACA,8BACA,2BAMJ,eACC,cF7JA,2CAEC,YACA,cAGD,qBACC,WE2JF,aACC,qBACA,cACA,8BACA,iBJxKiB,QIyKjB,8CACA,YACA,kBACA,MJlLW,QImLX,6BACA,oBACA,gBACA,qBACA,YAEA,mBACC,iBJvKY,QIwKZ,MJzKW,QI4KZ,oBACC,qBACA,8BACA,mCACA,kCACA,kCACA,eACA,kBACA,qBACA,QACA,2BACA,iBACA,YAIF,uBAEC,kBAGD,qEAKC,8BACA,WACA,MJzNM,QI0NN,wBACA,cAEA,+EACC,MJ9NK,QI+NL,wBACA,qBAGD,6GACC,0BAGD,6GACC,WACA,kBFlOD,yDAEC,YACA,cAGD,4BACC,WEmOF,YACC,kBAEA,gBACA,mBAEA,wBACC,UACA,SACA,mBAGD,oGAGC,MJ9Pa,QI+Pb,gCACA,iBACA,yBAGD,6CACC,qBACA,8BACA,mCACA,kCACA,kCACA,kBACA,iBACA,kBACA,qBACA,QACA,2BACA,MJhRa,QIiRb,gCAGD,0BACC,cAGD,oBACC,cACA,gBACA,MJ9RU,QI+RV,6BAGD,oDAEC,eAIF,eACC,cACA,qBAEA,sBACC,qBACA,8BACA,mCACA,kCACA,kCACA,eACA,kBACA,wBACA,QACA,2BACA,iBACA,YAIF,sBAEC,cACA,cAEA,4BACC,SACA,UAGD,4BACC,qBACA,oBACA,qBACA,gBFtTD,gCACC,cACA,8BACA,iBFjBgB,QEkBhB,8CACA,kBACA,MF1BU,QE2BV,6BACA,cACA,gBACA,qBAEA,4CACC,iBFdW,QEeX,MFhBU,QI4TX,gCACC,eAKH,iBACC,UACA,iBACA,kBF/UA,+CAEC,YACA,cAGD,uBACC,WE4UD,oCACC,aAGD,gEACC,YAGD,gEACC,YAGD,gEACC,YAGD,gEACC,YAGD,gIAEC,YAGD,kEACC,YAGD,+DACC,YAGD,iEACC,YAGD,mEACC,YAGD,gEACC,YAIF,WACC,kBACA,QACA,SFxXA,aACC,cACA,8BACA,iBFjBgB,QEkBhB,8CACA,kBACA,MF1BU,QE2BV,6BACA,cACA,gBACA,qBAEA,mBACC,iBFdW,QEeX,MFhBU,QI+Xb,WACC,cACA,eACA,MJnZM,QIoZN,wBAIA,oDACC,iBJ/Xe,QIkYhB,yCACC,MJnYe,QIsYhB,0CACC,iBJzZK,QI4ZN,+BACC,MJ7ZK,QIgaN,kDACC,iBJ5Za,QI+Zd,uCACC,MJhaa,QImad,gDACC,iBJraW,QIwaZ,qCACC,MJzaW,QI4aZ,8CACC,iBJ9ZS,KIiaV,mCACC,MJlaS,KIqaV,kDACC,iBJraa,QIwad,uCACC,MJzaa,QI4ad,4CACC,iBJ5aO,QI+aR,iCACC,MJhbO,QImbR,mDACC,iBJnbc,QIsbf,wCACC,MJvbc,QI0bf,2CACC,iBJ1bM,KI2bN,oCAGD,gCACC,MJ/bM,KIgcN,yBAGD,qDACC,iBJncgB,KIscjB,0CACC,MJvcgB,KI0cjB,oDACC,iBJ1ce,KI6chB,yCACC,MJ9ce,KIkdjB,QACC,cAID,oBACC,6BACA,eACA,gBACA,eACA,eACA,2BCjgBD,iBACC,UACA,cACA,SACA,MLoCe,MKnCf,8BHKA,+CAEC,YACA,cAGD,uBACC,WGRD,oBACC,6BACA,kBACA,YACA,gBACA,SACA,gBHLD,qDAEC,YACA,cAGD,0BACC,WGEA,sBACC,kBACA,MLnBS,QKoBT,6BACA,cACA,iBACA,gBACA,kBACA,qBAGD,uBACC,WACA,eACA,sBAEA,uFAGC,eACA,kBACA,YAEA,gGACC,mBAGD,6FACC,0BAMD,4GACC,YACA,gBACA,qBACA,iBACA,qBACA,yBAIF,gCACC,UACA,QAEA,mCACC,UACA,YAKH,uBACC,YACA,iBL1CK,KK2CL,oCACA,2CACA,aACA,gBACA,kBAEA,oBACA,SACA,kBACA,YAEA,yBACC,MLvFQ,QKwFR,6BACA,kBACA,iBACA,kBAGD,0BACC,WACA,mBACA,kBAGC,uCACC,6BACA,oCACA,4BAKA,0FACC,6BACA,oCACA,4BAOF,kHACC,YACA,qBACA,iBACA,eACA,gBAKH,0BACC,kBACA,WACA,MACA,YAKH,oBACC,gBACA,SACA,UAIF,WACC,cAGA,iBH5IA,mCAEC,YACA,cAGD,iBACC,WGuID,yBACC,WHzGD,MF7CM,QE8CN,wBACA,yBACA,iBFjBO,KEkBP,oCACA,mBACA,kBACA,qBACA,cACA,qBAfA,2BACC,qBACA,MFzCK,QE0CL,wBAcD,+BACC,UAGD,iNAMC,yBACA,+BACA,iBFpEK,QEqEL,mCACA,MFvCM,KEwCN,yBAGD,iCACC,MF3EK,QE4EL,wBG+ED,qBACC,YH/GD,MF7CM,QE8CN,wBACA,yBACA,iBFjBO,KEkBP,oCACA,mBACA,kBACA,qBACA,cACA,qBAfA,uBACC,qBACA,MFzCK,QE0CL,wBAcD,2BACC,UAGD,yLAMC,yBACA,+BACA,iBFpEK,QEqEL,mCACA,MFvCM,KEwCN,yBAGD,6BACC,MF3EK,QE4EL,wBGuFD,yBACC,eACA,UACA,WAGD,qBACC,eACA,WACA,WAGD,aACC,qBACA,qBACA,cACA,eAGD,mBACC,MLxLU,QKyLV,6BAKD,8CACC,UACA,qBACA,kBAGD,cACC,kBACA,MACA,OACA,iBACA,UACA,aAIF,aACC,cACA,cACA,WACA,kBACA,iBAEA,2BACC,gBACA,qBACA,aACA,MLvNW,QKwNX,8BAGD,eACC,qBAEA,qBACC,0BACA,MLlOS,QKmOT,6BAIF,sBACC,MLxOU,QKyOV,6BAIF,aACC,aC9OD,MACC,2BACA,+BACA,yBACA,cACA,iBACA,cACA,gBACA,kBACA,mBACA,WAEA,SACC,iBAGD,eACC,sBAIF,kBAEC,6BACA,aACA,gBACA,mBAGD,8OAMC,aAGD,kBACC,6BAGD,qWASC,aAGD,kEAEC,iBNlDiB,QMmDjB,8CAGD,gDAEC,iBNxDiB,QMyDjB,8CCjED,WACC,eACA,WACA,iBACA,gBAGD,YACC,eACA,YACA,gBACA,gBAGD,6DAKC,WACA,gBACA,WACA,eACA,YAGD,aACC,MPae,MOVhB,iMAMC,WAGD,4EAKC,cAGD,+DAKC,eACA,YAGD,SACC,cL/CA,+BAEC,YACA,cAGD,eACC,WK8CD,oJAOC,eAGD,wCAEC,YAIF,oBACC,gBAGD,qBACC,WAGD,SACC,mBAGD,uBACC,WACA,cACA,kBACA,UAGD,iCACC,WAGD,iCACC,UAGD,iCACC,UAGD,aACC,kBAGD,sCACC,cACA,YAED,yCACC,cACA,YAED,0BACC,WACA,eACA,gBAGD,iBACC,gBAGD,iDACC,WACA,eAMC,qGACC,cAKH,iCACC,cAGD,sBACC,WCxJD,SACC,mBACA,cACA,kBACA,eACA,iBACA,UNKA,+BAEC,YACA,cAGD,eACC,WMRD,mBACC,iBAGD,YACC,gBACA,yBACA,oBAGD,wBAEC,SACA,UAEA,8BACC,qBACA,gBAGD,4DACC,gBACA,gBAIF,eACC,MRlCU,QQmCV,6BAGD,4CAEC,MRxCU,QQyCV,6BACA,iBRVM,KQWN,oCACA,YACA,iBAEA,wDACC,iBR/CI,QQgDJ,mCCpDH,KACC,iBTkCO,KSjCP,yCACA,cACA,6BAEA,4BACA,gBACA,qBAGD,mBACC,mBAGD,QACC,kBAGD,EACC,MTjBW,QSkBX,6BAGD,IACC,KTtBW,QSuBX,4BAGD,QACC,qBAGD,KACC,wBAEA,YACC,iCACA,sCACA,YAIF,kBAEC,MTzCM,QS0CN,wBACA,cACA,kBACA,kBACA,gBACA,iCAEA,kGAGC,MTpDK,QSqDL,wBACA,cACA,eACA,kBACA,mBAKA,sFACC,aAMF,uDAGC,gBAIF,2BAEC,UACA,SAEA,6HAGC,iBAGD,iDACC,aACA,qBACA,YACA,kBAIF,OACC,YACA,iBAGD,WACC,SACA,8BACA,SACA,kBACA,gBAGD,KACC,wCACA,yBACA,mBACA,oBAEA,OACC,yBAIF,IACC,WT3FQ,QS4FR,qBAGD,kBAMC,iCACA,gBACA,gBACA,kBAGD,GACC,gBAGD,GACC,cAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,cACA,YACA,4BACA,SACA,6BACA,kBAGD,IACC,gBACA,mBACA,sBACA,WACA,cACA,aACA,qBACA,qBAEA,SACC,yBACA,cACA,sBACA,UACA,oBAIF,qCACC,kBAGD,mBACC,iBCrMD,uBACC,yBACA,cACA,yBACA,uCAGD,uBACC,yBACA,cACA,yBACA,uCAGD,+BACC,WACA,cAGD,6BACC,cACA,WAGD,uCACC,MVUO,KUPR,+BACC,aC7BD,iFAKC,YACA,yBACA,sCACA,kBACA,aAEA,+GACC,UAIF,eAEC,cACA,iBXgBO,KWfP,oCAGD,mBACC,yBACA,sCACA,mBACA,iBACA,UAEA,yBACC,UAIF,iHTcC,MF7CM,QE8CN,wBACA,yBACA,iBFjBO,KEkBP,oCACA,mBACA,kBACA,qBACA,cACA,qBAfA,+HACC,qBACA,MFzCK,QE0CL,wBAcD,2JACC,UAGD,mkCAMC,yBACA,+BACA,iBFpEK,QEqEL,mCACA,MFvCM,KEwCN,yBAGD,yKACC,MF3EK,QE4EL,wBSnCF,wCAGC,qBAIA,4BACC,aAIF,iBACC,cAEA,uDAEC,WACA,WAGD,4CACC,qBCnEF,cAGC,gBVQA,yCAEC,YACA,cAGD,oBACC,WUbD,sBACC,aACA,iBACA,gBACA,iBACA,uEACA,iCA0BA,0BAxBA,uFACC,kBACA,cAGD,0BACC,gBACA,mBAGD,4BACC,eACA,mBACA,MZtBI,QYuBJ,wBAGD,iCACC,eACA,MZ3BU,QY4BV,8BACA,sBAMF,6BACC,WAEA,iIAGC,cACA,UAGD,mCACC,cAGD,mCACC,cACA,MZpDI,QYqDJ,wBjB+DH,QACC,wBACA,kBAKD,gBACC,SACA,mBACA,WACA,YACA,gBACA,UACA,kBACA,UAMD,iEAEC,UACA,YACA,SACA,iBACA,gBACA,WAKD,WACC,kBkBzJD,UACC,cACA,SACA,UAEA,aACC,qBACA,oBACA,qBACA,gBAEA,uBACC,WACA,YAGD,iBACC,YACA,WAKH,gBACC,YACA,WACA,MbtBY,QauBZ,8BACA,qBAEA,oBACC,Kb3BW,Qa4BX,6BAIF,6DACC,MbHO,KaIP,kBAGD,iBACC,iBAGD,eACC,YAGD,+BACC,kBCnDD,MACC,yBACA,oBACA,2BACA,sBACA,4BACA,8BACA,6BACA,iCACA,+BACA,0BACA,wBAGD,mCACC,MACC,4BACA,uBACA,wBACA,mBACA,yBACA,2BACA,6BACA,iCAGD,IACC","file":"style.css"} -------------------------------------------------------------------------------- /template-parts/entry-author.php: -------------------------------------------------------------------------------- 1 | <address class="author p-author vcard hcard h-card" itemprop="author" itemscope="" itemtype="https://schema.org/Person"> 2 | <?php echo get_avatar( get_the_author_meta( 'ID' ), 100 ); ?> 3 | <a class="url uid u-url u-uid fn p-name" href="<?php echo get_author_posts_url( get_the_author_meta( 'ID' ) ); ?>"> 4 | <span itemprop="name"><?php echo get_the_author(); ?></span> 5 | </a> 6 | <div class="note e-note" itemprop="description"><?php echo get_the_author_meta( 'description' ); ?></div> 7 | <a class="subscribe" href="<?php echo get_author_feed_link( get_the_author_meta( 'ID' ) ); ?>"><i class="openwebicons-feed"></i> <?php _e( 'Subscribe to author feed', 'autonomie' ); ?></a> 8 | <link itemprop="url" href="<?php echo get_author_posts_url( get_the_author_meta( 'ID' ) ); ?>" /> 9 | </address> 10 | -------------------------------------------------------------------------------- /template-parts/entry-footer.php: -------------------------------------------------------------------------------- 1 | <?php if ( is_singular() || is_attachment() ) : ?> 2 | <footer class="entry-footer entry-meta"> 3 | <div class="entry-actions"> 4 | <?php if ( comments_open() || ( '0' !== get_comments_number() && ! comments_open() ) ) : ?> 5 | <indie-action do="reply" width="<?php the_permalink(); ?>"><div class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'autonomie' ), __( '1 Comment', 'autonomie' ), __( '% Comments', 'autonomie' ) ); ?></div></indie-action> 6 | <?php endif; ?> 7 | <?php get_template_part( 'template-parts/entry', 'share' ); ?> 8 | </div> 9 | 10 | <?php dynamic_sidebar( 'entry-meta' ); ?> 11 | <?php do_action( 'autonomie_entry_footer' ); ?> 12 | 13 | <?php // get_template_part( 'template-parts/entry', 'nav' ); ?> 14 | </footer><!-- #entry-meta --> 15 | <?php else : ?> 16 | <footer class="entry-footer entry-meta"> 17 | <?php if ( comments_open() || ( '0' !== get_comments_number() && ! comments_open() ) ) : ?> 18 | <div class="entry-actions"> 19 | <indie-action do="reply" width="<?php the_permalink(); ?>"><div class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'autonomie' ), __( '1 Comment', 'autonomie' ), __( '% Comments', 'autonomie' ) ); ?></div></indie-action> 20 | <div> 21 | <?php endif; ?> 22 | </footer><!-- #entry-meta --> 23 | <?php endif; ?> 24 | -------------------------------------------------------------------------------- /template-parts/entry-header.php: -------------------------------------------------------------------------------- 1 | <header class="entry-header"> 2 | <div class="entry-header-wrapper"> 3 | <div class="entry-meta post-format"> 4 | <?php echo apply_filters( 'autonomie_post_format', sprintf( 5 | '<a class="entry-format entry-format-%s entry-type-%s" href="%s">%s</a>', 6 | autonomie_get_post_format(), 7 | get_post_type(), 8 | esc_url( autonomie_get_post_format_link( autonomie_get_post_format() ) ), 9 | autonomie_get_post_format_string() 10 | ) ); ?> 11 | </div> 12 | 13 | <?php 14 | if ( ! in_array( get_post_format(), array( 'aside', 'quote', 'status' ), true ) && ! empty( get_the_title() ) ) : 15 | if ( is_singular() ) { 16 | $title_element = 'h1'; 17 | } else { 18 | $title_element = 'h2'; 19 | } 20 | ?> 21 | <<?php echo $title_element; ?> class="entry-title p-name" itemprop="name headline"> 22 | <a href="<?php the_permalink(); ?>" class="u-url url" title="<?php printf( esc_attr__( 'Permalink to %s', 'autonomie' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark" itemprop="url"> 23 | <?php the_title(); ?> 24 | </a> 25 | </<?php echo $title_element; ?>> 26 | <?php endif; ?> 27 | 28 | <?php // if ( ! is_singular() ) : ?> 29 | <div class="entry-meta"> 30 | <?php autonomie_posted_by(); ?> <span class="sep"> · </span> <?php autonomie_posted_on(); ?> <span class="sep"> · </span> <?php autonomie_reading_time(); ?> 31 | </div> 32 | <?php // endif; ?> 33 | </div> 34 | </header><!-- .entry-header --> 35 | 36 | <?php do_action( 'autonomie_before_entry_content' ); ?> 37 | -------------------------------------------------------------------------------- /template-parts/entry-nav.php: -------------------------------------------------------------------------------- 1 | <div id="post-nav"> 2 | <?php 3 | $prev_post = get_previous_post( true ); 4 | if ( $prev_post ) { 5 | $args = array( 6 | 'posts_per_page' => 1, 7 | 'include' => $prev_post->ID, 8 | ); 9 | $prev_post = get_posts( $args ); 10 | foreach ( $prev_post as $post ) { 11 | setup_postdata( $post ); 12 | ?> 13 | <div class="previous-post" style="background-image: url( <?php the_post_thumbnail_url( $post->ID, "medium" ); ?>"> 14 | <a class="previous" href="<?php the_permalink(); ?>">« Previous Story</a> 15 | <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4> 16 | <small><?php the_date( 'F j, Y' ); ?></small> 17 | </div> 18 | <?php 19 | wp_reset_postdata(); 20 | } //end foreach 21 | } // end if 22 | 23 | $next_post = get_next_post( true ); 24 | 25 | if ( $next_post ) { 26 | $args = array( 27 | 'posts_per_page' => 1, 28 | 'include' => $next_post->ID, 29 | ); 30 | $next_post = get_posts( $args ); 31 | foreach ( $next_post as $post ) { 32 | setup_postdata( $post ); 33 | ?> 34 | <div class="next-post" style="background-image: url( <?php the_post_thumbnail_url( $post->ID, 'medium' ); ?>"> 35 | <a class="next" href="<?php the_permalink(); ?>">Next Story »</a> 36 | <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4> 37 | <small><?php the_date( 'F j, Y' ); ?></small> 38 | </div> 39 | <?php 40 | wp_reset_postdata(); 41 | } //end foreach 42 | } // end if 43 | ?> 44 | </div> 45 | -------------------------------------------------------------------------------- /template-parts/entry-share.php: -------------------------------------------------------------------------------- 1 | <indie-action do="post" with="<?php echo get_permalink(); ?>"> 2 | <button type="share" id="entry-share"> 3 | <?php _e( 'share', 'autonomie' ); ?> 4 | </button> 5 | </indie-action> 6 | 7 | <div id="share-options" style="display: none;"> 8 | <p><strong>Sharing is caring ❤️</strong></p> 9 | <p> 10 | <label for="entry-shortlink"><?php _e( 'Shortlink', 'autonomie' ); ?></label> 11 | <input id="entry-shortlink" class="u-url url shortlink" type="text" value="<?php echo wp_get_shortlink(); ?>" /> 12 | </p> 13 | <p> 14 | <label for="entry-permalink"><?php _e( 'Permalink', 'autonomie' ); ?></label> 15 | <input id="entry-permalink" class="u-url url u-uid uid bookmark" type="text" value="<?php echo get_permalink(); ?>" /> 16 | </p> 17 | <?php 18 | // some comment ;) 19 | if ( get_the_title() ) { 20 | ?> 21 | <p> 22 | <label for="entry-summary"><?php _e( 'HTML', 'autonomie' ); ?></label> 23 | <textarea id="entry-summary" class="code" type="text" rows="5" cols="70"><cite class="h-cite"><a class="u-url p-name" href="<?php echo get_permalink(); ?>"><?php echo get_the_title(); ?></a> (<span class="p-author h-card" title="<?php echo get_the_author(); ?>"><?php echo get_the_author(); ?></span> <time class="dt-published" datetime="<?php echo get_the_date( 'c' ); ?>"><?php echo get_the_date(); ?></time>)</cite></textarea> 24 | </p> 25 | <?php } else { ?> 26 | <p> 27 | <label for="entry-blockquote"><?php _e( 'HTML', 'autonomie' ); ?></label> 28 | <textarea id="entry-blockquote" class="code" type="text" rows="5" cols="70"><blockquote><p><?php echo get_the_excerpt(); ?></p><small>— by <a href="<?php echo get_permalink(); ?>" class="h-card" title="<?php echo get_the_author(); ?>"><?php echo get_the_author(); ?></a></small></blockquote></textarea> 29 | </p> 30 | <?php } ?> 31 | </div> 32 | -------------------------------------------------------------------------------- /template-parts/entry-taxonomy.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /* translators: used between list items, there is a space after the comma */ 3 | $categories_list = get_the_category_list(); 4 | if ( $categories_list ) : 5 | ?> 6 | <div class="cat-links"> 7 | <?php echo __( 'Categories', 'autonomie' ); ?> 8 | <?php printf( __( '%1$s', 'autonomie' ), $categories_list ); ?> 9 | </div> 10 | <?php endif; // End if categories ?> 11 | 12 | <?php 13 | /* translators: used between list items, there is a space after the comma */ 14 | $tags_list = get_the_tag_list( '<ul><li>', '</li><li>', '</li></ul>' ); 15 | if ( $tags_list ) : 16 | ?> 17 | <div class="tag-links" itemprop="keywords"> 18 | <?php echo __( 'Tags', 'autonomie' ); ?> 19 | <?php printf( __( '%1$s', 'autonomie' ), $tags_list ); ?> 20 | </div> 21 | <?php endif; // End if $tags_list ?> 22 | -------------------------------------------------------------------------------- /template-parts/page-banner-author.php: -------------------------------------------------------------------------------- 1 | <div class="page-banner"> 2 | <div class="page-branding author p-author h-card"> 3 | <?php echo get_avatar( get_the_author_meta( 'ID' ), 150 ); ?> 4 | <h1 id="page-title"<?php autonomie_semantics( 'page-title' ); ?>><?php echo get_the_author_meta( 'display_name' ); ?></h1> 5 | <div id="page-description"<?php autonomie_semantics( 'page-description' ); ?>><?php echo get_the_author_meta( 'description' ); ?></div> 6 | <div id="page-meta"><?php echo autonomie_get_archive_author_meta(); ?></div> 7 | </div> 8 | </div> 9 | -------------------------------------------------------------------------------- /template-parts/page-banner.php: -------------------------------------------------------------------------------- 1 | <?php if ( autonomie_show_page_banner() ) : ?> 2 | <div class="page-banner"> 3 | <?php if ( ! is_singular() ) : ?> 4 | <div class="page-branding"> 5 | <?php if ( autonomie_get_the_archive_title() ) { ?> 6 | <h1 id="page-title"<?php autonomie_semantics( 'page-title' ); ?>><?php echo autonomie_get_the_archive_title(); ?></h1> 7 | <?php } ?> 8 | <?php if ( autonomie_get_the_archive_description() ) { ?> 9 | <div id="page-description"<?php autonomie_semantics( 'page-description' ); ?>><?php echo autonomie_get_the_archive_description(); ?></div> 10 | <?php } ?> 11 | </div> 12 | <?php printf( '<link itemprop="mainEntityOfPage" href="%s" />', get_self_link() ); ?> 13 | <?php endif; ?> 14 | </div> 15 | <?php endif; ?> 16 | -------------------------------------------------------------------------------- /templates/content-aside.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Aside Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <aside <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content p-summary entry-title p-name" itemprop="name headline description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </aside><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-audio.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Audio Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-chat.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Chat Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="articleBody description"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-gallery.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Gallery Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-links"><span class="page-links-title">' . __( 'Pages:', 'autonomie' ) . '</span>', 'after' => '</div>', 'link_before' => '<span>', 'link_after' => '</span>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-image.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Image Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-link.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Link Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <aside <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content p-summary entry-title p-name" itemprop="name headline description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </aside><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-page.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Standard Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description text"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-quote.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Quote Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-title p-name entry-content e-content" itemprop="name headline description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-single.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Standard Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class( 'post' ); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-status.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Status Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <aside <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content p-summary entry-title p-name" itemprop="name headline description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </aside><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content-video.php: -------------------------------------------------------------------------------- 1 | <?php 2 | /** 3 | * The template for displaying posts in the Video Post Format on index and archive pages 4 | * 5 | * Learn more: http://codex.wordpress.org/Post_Formats 6 | * 7 | * @package Autonomie 8 | * @since Autonomie 1.0.0 9 | */ 10 | ?> 11 | 12 | <article <?php autonomie_post_id(); ?> <?php post_class(); ?><?php autonomie_semantics( 'post' ); ?>> 13 | <?php get_template_part( 'template-parts/entry-header' ); ?> 14 | 15 | <?php autonomie_the_post_thumbnail( '<div class="entry-media">', '</div>' ); ?> 16 | <div class="entry-content e-content" itemprop="description articleBody"> 17 | <?php autonomie_the_content(); ?> 18 | <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'autonomie' ), 'after' => '</div>' ) ); ?> 19 | </div><!-- .entry-content --> 20 | 21 | <?php get_template_part( 'template-parts/entry-footer' ); ?> 22 | </article><!-- #post-<?php the_ID(); ?> --> 23 | -------------------------------------------------------------------------------- /templates/content.php: -------------------------------------------------------------------------------- 1 | <?php get_template_part( 'templates/content', 'single' ); 2 | -------------------------------------------------------------------------------- /widgets/class-autonomie-author-widget.php: -------------------------------------------------------------------------------- 1 | <?php 2 | 3 | class Autonomie_Author_Widget extends WP_Widget { 4 | 5 | public function __construct() { 6 | 7 | parent::__construct( 8 | 'autonomie-author', // Base ID 9 | 'Author Details (Autonomie)' // Name 10 | ); 11 | } 12 | 13 | public function widget( $args, $instance ) { 14 | get_template_part( 'template-parts/entry', 'author' ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /widgets/class-autonomie-taxonomy-widget.php: -------------------------------------------------------------------------------- 1 | <?php 2 | 3 | class Autonomie_Taxonomy_Widget extends WP_Widget { 4 | 5 | public function __construct() { 6 | 7 | parent::__construct( 8 | 'autonomie-taxonomy', // Base ID 9 | 'Entry Taxonomy (Autonomie)' // Name 10 | ); 11 | } 12 | 13 | public function widget( $args, $instance ) { 14 | get_template_part( 'template-parts/entry', 'taxonomy' ); 15 | } 16 | } 17 | --------------------------------------------------------------------------------