From 2cd916746ee63d59727f824ee49bea187c94c174 Mon Sep 17 00:00:00 2001 From: Matt Marcha Date: Wed, 14 Sep 2022 19:14:59 +1200 Subject: [PATCH] base templates + css --- 404.php | 29 +++ LICENSE | 339 ++++++++++++++++++++++++++++ archive.php | 48 ++++ comments.php | 58 +++++ css/content.css | 235 ++++++++++++++++++++ css/normalize.css | 349 +++++++++++++++++++++++++++++ footer.php | 26 +++ functions.php | 117 ++++++++++ header.php | 56 +++++ inc/cleanup.php | 39 ++++ inc/comments-honeypot.php | 10 + inc/template-tags.php | 138 ++++++++++++ index.php | 56 +++++ page.php | 32 +++ readme.md | 19 ++ single.php | 38 ++++ style.css | 380 ++++++++++++++++++++++++++++++++ template-parts/content-none.php | 25 +++ template-parts/content-page.php | 23 ++ template-parts/content.php | 31 +++ theme.json | 93 ++++++++ 21 files changed, 2141 insertions(+) create mode 100644 404.php create mode 100644 LICENSE create mode 100644 archive.php create mode 100644 comments.php create mode 100644 css/content.css create mode 100644 css/normalize.css create mode 100644 footer.php create mode 100644 functions.php create mode 100644 header.php create mode 100644 inc/cleanup.php create mode 100644 inc/comments-honeypot.php create mode 100644 inc/template-tags.php create mode 100644 index.php create mode 100644 page.php create mode 100644 readme.md create mode 100644 single.php create mode 100644 style.css create mode 100644 template-parts/content-none.php create mode 100644 template-parts/content-page.php create mode 100644 template-parts/content.php create mode 100644 theme.json diff --git a/404.php b/404.php new file mode 100644 index 0000000..4ea67f8 --- /dev/null +++ b/404.php @@ -0,0 +1,29 @@ + + +
+ +
+ + +
+

+

stupid rabbit stories instead", 'matt'), get_category_link(get_category_by_slug('djordj'))); ?>

+
+
+ +
+ + + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {description} + Copyright (C) {year} {fullname} + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + {signature of Ty Coon}, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/archive.php b/archive.php new file mode 100644 index 0000000..c1edaa8 --- /dev/null +++ b/archive.php @@ -0,0 +1,48 @@ + +
+ + + + + + +
+ + + + \ No newline at end of file diff --git a/css/content.css b/css/content.css new file mode 100644 index 0000000..e1ebcd4 --- /dev/null +++ b/css/content.css @@ -0,0 +1,235 @@ +/*-------------------------------------------------------------- +# Stylesheet displaying content (blocks & basic tags) +# For editor & front +--------------------------------------------------------------*/ + +/* Global styles +--------------------------------------------- */ +/** +Global vars + */ + +:root { + /* Set sans-serif & mono fonts */ + --sans-font: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif; + --mono-font: Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace; + --serif-font: Iowan Old Style, Apple Garamond, Baskerville, Times New Roman, Droid Serif, Times, Source Serif Pro, serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol; + + /* Default (dark) theme */ + --bg: #2e3440; + --accent-bg: #434c5e; + --text: #eceff4; + --text-light: #d8dee9; + --accent: #88c0d0; + --code: #d8dee9; + --preformatted: #d8dee9; + --marked: #8fbcbb; + --disabled: #4c566a; +} + +/* Light theme */ +@media (prefers-color-scheme: light) { + :root { + color-scheme: light; + --bg: #eceff4; + --accent-bg: #e5e9f0; + --text: #2e3440; + --text-light: #4c566a; + --code: #4c566a; + --preformatted: #4c566a; + --disabled: #d8dee9; + } +} + +/** +Layout + */ +.wp-site-blocks > .alignleft { + float: left; + margin-right: 2em; +} +.wp-site-blocks > .alignright { + float: right; + margin-left: 2em; +} +.wp-site-blocks > .aligncenter { + justify-content: center; + margin-left: auto; + margin-right: auto; +} + +main#primary, +.editor-styles-wrapper { + padding: 0 1em; +} + +main#primary > * { + max-width: 980px; + margin-left: auto; + margin-right: auto; +} + +main#primary > *.alignwide { + max-width: 1180px; +} + +main#primary > *.alignfull { + width: calc(100% + 20px); + margin: 0 -10px; + max-width: unset; +} + +.has-text-align-center { + text-align: center; +} + +.page-header { + max-width: 1200px; + width: calc(100% - 10px); + margin: 0 auto; + text-align: center; +} + +img { + max-width: 100%; + height: auto; +} + +/** +Typography + */ + +body { + margin: 0; + color: var(--text); + font-size: 16px; + font-family: var(--sans-font); + line-height: 1.33; + background-color: var(--bg); +} + +a { + color: var(--accent); + text-decoration: underline; +} + +.entry-title > a { + color: inherit; + text-decoration: none; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: var(--serif-font); + font-variant: small-caps; + color: var(--text); +} + +h1 { + font-size: 2.5rem; +} +h2 { + font-size: 1.6rem; + margin-top: 1.25em; + margin-bottom: 1.25em; +} +h3 { + font-size: 1.2rem; + margin-top: 1.15em; + margin-bottom: 1em; +} +h4 { + color: var(--text-light); + font-size: 1.04rem; + margin-top: 1.1em; + margin-bottom: 1em; +} +h5 { + color: var(--text-light); + font-size: 1.04rem; + margin-top: 1em; +} +h6 { + color: var(--accent); + font-size: 1rem; + margin-top: 1em; +} +p { + margin-top: 0; + margin-bottom: 1em; +} +ol, +ul { + margin-bottom: 1em; +} + +.has-small-font-size { + font-size: 0.8rem !important; +} +.has-normal-font-size { + font-size: 1rem !important; +} +.has-big-font-size { + font-size: 1.2rem !important; +} +.has-huge-font-size { + font-size: 2rem !important; +} +.has-text-font-family { + font-family: var(--sans-font) !important; +} +.has-title-font-family { + font-family: var(--serif-font) !important; +} +/** +Colors + */ +.has-red-color { + color: var(--ise-red) !important; +} +.has-blue-color { + color: var(--ise-blue) !important; +} +.has-dark-grey-color { + color: var(--ise-dark-grey) !important; +} +.has-grey-color { + color: var(--ise-grey) !important; +} +.has-light-grey-color { + color: var(--ise-light-grey) !important; +} +.has-red-background-color { + background-color: var(--ise-red) !important; +} +.has-blue-background-color { + background-color: var(--ise-blue) !important; +} +.has-dark-grey-background-color { + background-color: var(--ise-dark-grey) !important; +} +.has-grey-background-color { + background-color: var(--ise-grey) !important; +} +.has-light-grey-background-color { + background-color: var(--ise-light-grey) !important; +} +.has-red-border-color { + border-color: var(--ise-red) !important; +} +.has-blue-border-color { + border-color: var(--ise-blue) !important; +} +.has-dark-grey-border-color { + border-color: var(--ise-dark-grey) !important; +} +.has-grey-border-color { + border-color: var(--ise-grey) !important; +} +.has-light-grey-border-color { + border-color: var(--ise-light-grey) !important; +} \ No newline at end of file diff --git a/css/normalize.css b/css/normalize.css new file mode 100644 index 0000000..6a89b17 --- /dev/null +++ b/css/normalize.css @@ -0,0 +1,349 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ + +/* Document + ========================================================================== */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + +html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/* Sections + ========================================================================== */ + +/** + * Remove the margin in all browsers. + */ + +body { + margin: 0; +} + +/** + * Render the `main` element consistently in IE. + */ + +main { + display: block; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/* Grouping content + ========================================================================== */ + +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + +hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +pre { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Remove the gray background on active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + +abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove the border on images inside links in IE 10. + */ + +img { + border-style: none; +} + +/* Forms + ========================================================================== */ + +/** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + +button, +input, +optgroup, +select, +textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + margin: 0; /* 2 */ +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + +button, +input { /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + +button, +select { /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +/** + * Remove the inner border and padding in Firefox. + */ + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Correct the padding in Firefox. + */ + +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + +legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ + +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ + +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + +[type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + +::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ +} + +/* Interactive + ========================================================================== */ + +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ + +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ + +/** + * Add the correct display in IE 10+. + */ + +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ + +[hidden] { + display: none; +} \ No newline at end of file diff --git a/footer.php b/footer.php new file mode 100644 index 0000000..2eef132 --- /dev/null +++ b/footer.php @@ -0,0 +1,26 @@ + + + + + + + + diff --git a/functions.php b/functions.php new file mode 100644 index 0000000..0e8c6c0 --- /dev/null +++ b/functions.php @@ -0,0 +1,117 @@ + tag in the document head, and expect WordPress to + * provide it for us. + */ + add_theme_support( 'title-tag' ); + + /* + * Enable support for Post Thumbnails on posts and pages. + * + * @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/ + */ + add_theme_support( 'post-thumbnails' ); + + // This theme uses wp_nav_menu() in one location. + register_nav_menus( + array( + 'menu-1' => esc_html( 'Primary' ), + 'menu-2' => esc_html( 'Footer' ), + ) + ); + + /* + * Switch default core markup for search form, comment form, and comments + * to output valid HTML5. + */ + add_theme_support( + 'html5', + array( + 'gallery', + 'caption', + 'style', + 'script', + ) + ); +} +add_action( 'after_setup_theme', 'matt_setup' ); + +/** + * Enqueue scripts and styles. + */ +function matt_scripts() { + wp_enqueue_style( 'matt-style', get_stylesheet_uri(), array(), MATT_VERSION ); + + // Ajout des CSS du thèmes + wp_enqueue_style('matt-normalize', get_template_directory_uri(). '/css/normalize.css', array(), MATT_VERSION); + wp_enqueue_style('matt-fonts', get_template_directory_uri(). '/css/fonts.css', array(), MATT_VERSION); + wp_enqueue_style('matt-content', get_template_directory_uri(). '/css/content.css', array(), MATT_VERSION); + + // Suppression des styles Gutenberg de base + wp_dequeue_style( 'wp-block-library' ); + wp_dequeue_style( 'wp-block-library-theme' ); +} +add_action( 'wp_enqueue_scripts', 'matt_scripts' ); + +// Load only used blocks styles +add_filter( 'should_load_separate_core_block_assets', '__return_true' ); + + +/** + ******** Enhancing scripts ********** +**/ + +/** + * Cleanup unnecessary functionalities + */ +require get_template_directory() . '/inc/cleanup.php'; + +/** + * Honeypot for comments + */ +require get_template_directory() . '/inc/comments-honeypot.php'; + +/** + * Custom template tags for this theme. + */ +require get_template_directory() . '/inc/template-tags.php'; + +/*** Change a few FR translations *********/ + +function filter_gettext($translated, $original, $domain) { + // Use the text string exactly as it is in the translation file + if ( $translated == "Laisser un commentaire" ) { + $translated = "Commenter"; + } + + return $translated; +} + +add_filter('gettext', 'filter_gettext', 10, 3); diff --git a/header.php b/header.php new file mode 100644 index 0000000..0a4d632 --- /dev/null +++ b/header.php @@ -0,0 +1,56 @@ + section and everything up until
+ * + * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials + * + * @package L\'InSuffleriE + */ + +?> + +> + + + + + + + + +> + + +
+
+ +

+ +

+ +

+ +
+ + +
diff --git a/inc/cleanup.php b/inc/cleanup.php new file mode 100644 index 0000000..765ae14 --- /dev/null +++ b/inc/cleanup.php @@ -0,0 +1,39 @@ +is_search = false; + $query->query_vars['s'] = false; + $query->query['s'] = false; + if ( $error ) + $query->is_404 = true; + } +} +add_action( 'parse_query', 'matt_filter_query' ); +add_filter( 'get_search_form', function () { return null; } ); +function remove_search_widget(): void { + unregister_widget('WP_Widget_Search'); +} +add_action( 'widgets_init', 'remove_search_widget' ); \ No newline at end of file diff --git a/inc/comments-honeypot.php b/inc/comments-honeypot.php new file mode 100644 index 0000000..c0133d3 --- /dev/null +++ b/inc/comments-honeypot.php @@ -0,0 +1,10 @@ +"; +} + + + diff --git a/inc/template-tags.php b/inc/template-tags.php new file mode 100644 index 0000000..ea4ca6f --- /dev/null +++ b/inc/template-tags.php @@ -0,0 +1,138 @@ + + +
+ +
+ + + + + + '; + + $nb_com = get_comments_number(); + if ($nb_com > 0) { + echo ''; + printf(_n('%s Comment', '%s Comment', $nb_com ), $nb_com); + echo ' - '; + } + + echo ''. __('Leave a Comment') .'

'; + + } + } +endif; + +if (!function_exists('matt_entry_header')): + /** + * Prints HTML with meta information for the categories. + * + * @return void + */ + function matt_entry_header(): void { + + // Early exit if not a post. + if ( 'post' !== get_post_type() ) { + return; + } + + // Hide meta information on pages. + if ( ! is_single() ) { + if ( has_category() ) { + /* translators: Used between list items, there is a space after the comma. */ + $categories_list = get_the_category_list( ' • ' ); + if ( $categories_list ) { + printf( + /* translators: %s: List of categories. */ + '', + $categories_list // phpcs:ignore WordPress.Security.EscapeOutput + ); + } + } + // Posted on. + matt_posted_on(); + } + } +endif; + +if (!function_exists('matt_posted_on')): + /** + * Prints a post date + * Must be in the loop + */ + function matt_posted_on() { + $time_string = ''; + + $time_string = sprintf( + $time_string, + esc_attr( get_the_date( DATE_W3C ) ), + esc_html( get_the_date() ) + ); + echo '

'; + printf( + /* translators: %s: Publish date. */ + esc_html__( '%s', 'matt' ), + $time_string // phpcs:ignore WordPress.Security.EscapeOutput + ); + echo ''; + } +endif; \ No newline at end of file diff --git a/index.php b/index.php new file mode 100644 index 0000000..7c8835c --- /dev/null +++ b/index.php @@ -0,0 +1,56 @@ + + +

+ + +
+

+
+ + +
+ + + +
+ + + +
+ +.php` in the root directory. +- For the full content : add a file name `content-.php` in the `template-parts` directory. +- For the excerpt : add a file name `excerpt-.php` in the `template-parts` directory. \ No newline at end of file diff --git a/single.php b/single.php new file mode 100644 index 0000000..87f563f --- /dev/null +++ b/single.php @@ -0,0 +1,38 @@ + + +
+ + __('Next Post') . ' : %title', + 'prev_text' => __('Previous Post') . ' : %title', + ) + ); + + // If comments are open or there is at least one comment, load up the comment template. + if ( comments_open() || get_comments_number() ) { + comments_template(); + } + ?> + +
+ + li > a:before, +header#masthead div.menu-main-menu-container ul.menu > li > a:after { + content: '-------'; + display: inline-block; + margin-top: -.5em; + padding: 0 .5em; + +} + +header#masthead div.menu-main-menu-container ul.menu { + padding: 1em; +} + +header#masthead div.menu-main-menu-container ul.menu > li { + margin-bottom: .5em; +} +header#masthead div.menu-main-menu-container ul.menu > li > a { + font-size: 1.3em; + margin-bottom: .2em; + display: block; +} + + +header#masthead div.menu-main-menu-container ul.sub-menu > li > a { + font-size: 1.1em; + color: var(--text-light); +} + + +main#primary nav.posts-navigation .nav-links, +main#primary nav.post-navigation .nav-links{ + position: relative; + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-between; + gap: 0 2em; +} + +main#primary nav.posts-navigation .nav-links a, +main#primary nav.post-navigation .nav-links a { + text-decoration: none; + font-size: 1.2em; +} + +main#primary nav.posts-navigation .nav-previous:before, +main#primary nav.post-navigation .nav-previous:before{ + content: '<'; + color: var(--accent); + font-size: 1.2em; + margin-right: .2em; +} + +main#primary nav.posts-navigation .nav-next:after, +main#primary nav.post-navigation .nav-next:after{ + content: '>'; + color: var(--accent); + font-size: 1.2em; + margin-left: .2em; +} + +/* Various +--------------------------------------------- */ + +input, textarea { + background-color: var(--accent-bg); + border: 1px solid var(--bg); + color: var(--text-light); + padding: .6em; +} + +input[type=submit] { + background-color: var(--bg); + color: var(--accent); + border: dashed 2px var(--accent); +} + +input[type=submit]:hover { + border: solid 2px var(--accent); +} + +form#commentform label { + display: block; + color: var(--text-light); +} + + +aside#comments ol.comment-list .comment-author a, +aside#comments ol.comment-list .comment-meta a { + text-decoration: none; + color: var(--text-light); +} + +/* Archives +--------------------------------------------- */ + +.blog article > header a, +.archive article > header a, +.blog article > footer a, +.archive article > footer a { + text-decoration: none; +} + +.blog article > header a:hover, +.archive article > header a:hover, +.blog article > footer a:hover, +.archive article > footer a:hover { + text-decoration: underline; +} + +.blog article > header h2, +.archive article > header h2 { + margin-bottom: 0.3em;; +} + +.blog article > header h2 a:hover, +.archive article > header h2 a:hover { + text-decoration: none; +} + +.blog article > header .cat-links, +.archive article > header .cat-links { + margin: 0; + padding: 0; +} + +.blog article > header .cat-links a, +.archive article > header .cat-links a { + color: var(--text-light); + text-transform: uppercase; + opacity: 0.6; + letter-spacing: -1px; + font-weight: 100; +} + +.blog article > footer .post-meta-comments, +.archive article > footer .post-meta-comments { + text-align: center; + color: var(--text-light); + opacity: 0.8; + font-size: 1.1em; +} +.blog article > footer .post-meta-comments a, +.archive article > footer .post-meta-comments a { + color: var(--text-light); +} + +.blog article:after, +.archive article:after { + content: ""; + display: block; + width: 200px; + height: 2px; + border-bottom: 1px solid var(--accent); + margin: 2em auto 3em; +} + +/* Footer +--------------------------------------------- */ + +footer#colophon { + margin-top: 5em; + padding: 1em; +} + +footer#colophon nav { + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-between; + gap: 1em; + margin-bottom: 2em; +} + +footer#colophon nav a { + text-decoration: none; + color: var(--text-light); +} + +footer#colophon .legals { + font-size: 0.8em; + color: var(--text-light); + opacity: 0.8; + text-align: center; +} + +/* Accessibility +--------------------------------------------- */ + +/* Text meant only for screen readers. */ + +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + clip-path: none; + color: #21759b; + display: block; + font-size: 0.875rem; + font-weight: 700; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; +} + +/* Do not show the outline on the skip link target. */ + +#primary[tabindex="-1"]:focus { + outline: 0; +} diff --git a/template-parts/content-none.php b/template-parts/content-none.php new file mode 100644 index 0000000..c140d06 --- /dev/null +++ b/template-parts/content-none.php @@ -0,0 +1,25 @@ + + +
+ + +
+

+

stupid rabbit stories instead", get_category_link(get_category_by_slug('djordj')))); ?>

+
+ +
+ +
+
diff --git a/template-parts/content-page.php b/template-parts/content-page.php new file mode 100644 index 0000000..2ef95de --- /dev/null +++ b/template-parts/content-page.php @@ -0,0 +1,23 @@ + + +
> +
+ ', '' ); ?> +
+ +
+ +
+ +
diff --git a/template-parts/content.php b/template-parts/content.php new file mode 100644 index 0000000..f178b91 --- /dev/null +++ b/template-parts/content.php @@ -0,0 +1,31 @@ + + + diff --git a/theme.json b/theme.json new file mode 100644 index 0000000..27419dd --- /dev/null +++ b/theme.json @@ -0,0 +1,93 @@ +{ + "version": 2, + "settings": { + "color": { + "palette": [ + { + "name" : "Blue", + "slug" : "blue", + "color" : "#88c0d0" + }, + { + "name" : "Green", + "slug" : "green", + "color" : "#8fbcbb" + }, + { + "name" : "Dark", + "slug" : "dark", + "color" : "#2e3440" + }, + { + "name" : "Light", + "slug" : "light", + "color" : "#eceff4" + }, + { + "name" : "Grey", + "slug" : "grey", + "color" : "#d8dee9" + } + ], + "custom": false, + "customGradient": false, + "customDuotone": false, + "gradients": [], + "link": false, + "defaultPalette": false, + "defaultGradients": false + }, + "layout": { + "contentSize": "900px", + "wideSize": "1200px" + }, + "typography": { + "fontFamilies": [ + { + "fontFamily": "-apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif", + "slug": "text", + "name": "Texte" + }, + { + "fontFamily": "Iowan Old Style, Apple Garamond, Baskerville, Times New Roman, Droid Serif, Times, Source Serif Pro, serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol", + "slug": "title", + "name": "Titre" + }, + { + "fontFamily": "Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace", + "slug": "mono", + "name": "Mono" + } + ], + "fontSizes": [ + { + "slug": "small", + "size": "0.8rem", + "name": "Petit" + }, + { + "slug": "normal", + "size": "1rem", + "name": "Normal" + }, + { + "slug": "big", + "size": "1.5rem", + "name": "Grand" + }, + { + "slug": "huge", + "size": "2rem", + "name": "Très grand" + } + ] + }, + "blocks": { + "core/button": { + "border": { + "radius": false + } + } + } + } +} \ No newline at end of file