boot-cli 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1413) hide show
  1. checksums.yaml +7 -0
  2. data/bin/boot +9 -0
  3. data/lib/Boot/Lib/Commands/Config.rb +28 -0
  4. data/lib/Boot/Lib/Commands/Help.rb +17 -0
  5. data/lib/Boot/Lib/Commands/New.rb +77 -0
  6. data/lib/Boot/Lib/Commands/Template.rb +87 -0
  7. data/lib/Boot/Lib/Commands/Version.rb +15 -0
  8. data/lib/Boot/Lib/Core/Config.rb +84 -0
  9. data/lib/Boot/Lib/Core/InvalidConfigException.rb +4 -0
  10. data/lib/Boot/Lib/Core/InvalidTemplateException.rb +4 -0
  11. data/lib/Boot/Lib/Core/SubCommand.rb +61 -0
  12. data/lib/Boot/Lib/Core/Template.rb +375 -0
  13. data/lib/Boot/Lib/autoload.rb +23 -0
  14. data/lib/boot-default-config.json +1 -0
  15. data/lib/boot.rb +60 -0
  16. data/lib/template.json-schema +144 -0
  17. data/lib/templates/.document +1 -0
  18. data/lib/templates/.gitmodules +3 -0
  19. data/lib/templates/README.md +3 -0
  20. data/lib/templates/c/static/ext/__dummy-file__ +0 -0
  21. data/lib/templates/c/static/src/main.c +0 -0
  22. data/lib/templates/c/template.json +24 -0
  23. data/lib/templates/gitignores/Actionscript.gitignore +11 -0
  24. data/lib/templates/gitignores/Ada.gitignore +5 -0
  25. data/lib/templates/gitignores/Agda.gitignore +1 -0
  26. data/lib/templates/gitignores/Android.gitignore +27 -0
  27. data/lib/templates/gitignores/AppEngine.gitignore +2 -0
  28. data/lib/templates/gitignores/AppceleratorTitanium.gitignore +3 -0
  29. data/lib/templates/gitignores/ArchLinuxPackages.gitignore +14 -0
  30. data/lib/templates/gitignores/Autotools.gitignore +14 -0
  31. data/lib/templates/gitignores/C++.gitignore +28 -0
  32. data/lib/templates/gitignores/C.gitignore +32 -0
  33. data/lib/templates/gitignores/CFWheels.gitignore +12 -0
  34. data/lib/templates/gitignores/CMake.gitignore +5 -0
  35. data/lib/templates/gitignores/CONTRIBUTING.md +34 -0
  36. data/lib/templates/gitignores/CUDA.gitignore +6 -0
  37. data/lib/templates/gitignores/CakePHP.gitignore +13 -0
  38. data/lib/templates/gitignores/ChefCookbook.gitignore +9 -0
  39. data/lib/templates/gitignores/Clojure.gitignore +12 -0
  40. data/lib/templates/gitignores/CodeIgniter.gitignore +6 -0
  41. data/lib/templates/gitignores/CommonLisp.gitignore +3 -0
  42. data/lib/templates/gitignores/Composer.gitignore +6 -0
  43. data/lib/templates/gitignores/Concrete5.gitignore +3 -0
  44. data/lib/templates/gitignores/Coq.gitignore +3 -0
  45. data/lib/templates/gitignores/CraftCMS.gitignore +3 -0
  46. data/lib/templates/gitignores/DM.gitignore +5 -0
  47. data/lib/templates/gitignores/Dart.gitignore +14 -0
  48. data/lib/templates/gitignores/Delphi.gitignore +57 -0
  49. data/lib/templates/gitignores/Drupal.gitignore +36 -0
  50. data/lib/templates/gitignores/EPiServer.gitignore +4 -0
  51. data/lib/templates/gitignores/Eagle.gitignore +36 -0
  52. data/lib/templates/gitignores/Elisp.gitignore +5 -0
  53. data/lib/templates/gitignores/Elixir.gitignore +4 -0
  54. data/lib/templates/gitignores/Erlang.gitignore +10 -0
  55. data/lib/templates/gitignores/ExpressionEngine.gitignore +19 -0
  56. data/lib/templates/gitignores/ExtJs.gitignore +4 -0
  57. data/lib/templates/gitignores/Fancy.gitignore +2 -0
  58. data/lib/templates/gitignores/Finale.gitignore +13 -0
  59. data/lib/templates/gitignores/ForceDotCom.gitignore +4 -0
  60. data/lib/templates/gitignores/Fortran.gitignore +28 -0
  61. data/lib/templates/gitignores/FuelPHP.gitignore +2 -0
  62. data/lib/templates/gitignores/GWT.gitignore +28 -0
  63. data/lib/templates/gitignores/Gcov.gitignore +5 -0
  64. data/lib/templates/gitignores/GitBook.gitignore +16 -0
  65. data/lib/templates/gitignores/Global/Anjuta.gitignore +3 -0
  66. data/lib/templates/gitignores/Global/Archives.gitignore +27 -0
  67. data/lib/templates/gitignores/Global/BricxCC.gitignore +4 -0
  68. data/lib/templates/gitignores/Global/CVS.gitignore +4 -0
  69. data/lib/templates/gitignores/Global/Cloud9.gitignore +3 -0
  70. data/lib/templates/gitignores/Global/CodeKit.gitignore +3 -0
  71. data/lib/templates/gitignores/Global/DartEditor.gitignore +2 -0
  72. data/lib/templates/gitignores/Global/Dreamweaver.gitignore +3 -0
  73. data/lib/templates/gitignores/Global/Eclipse.gitignore +36 -0
  74. data/lib/templates/gitignores/Global/EiffelStudio.gitignore +2 -0
  75. data/lib/templates/gitignores/Global/Emacs.gitignore +32 -0
  76. data/lib/templates/gitignores/Global/Ensime.gitignore +4 -0
  77. data/lib/templates/gitignores/Global/Espresso.gitignore +1 -0
  78. data/lib/templates/gitignores/Global/FlexBuilder.gitignore +3 -0
  79. data/lib/templates/gitignores/Global/IPythonNotebook.gitignore +2 -0
  80. data/lib/templates/gitignores/Global/JDeveloper.gitignore +13 -0
  81. data/lib/templates/gitignores/Global/JetBrains.gitignore +46 -0
  82. data/lib/templates/gitignores/Global/KDevelop4.gitignore +2 -0
  83. data/lib/templates/gitignores/Global/Kate.gitignore +3 -0
  84. data/lib/templates/gitignores/Global/Lazarus.gitignore +15 -0
  85. data/lib/templates/gitignores/Global/LibreOffice.gitignore +2 -0
  86. data/lib/templates/gitignores/Global/Linux.gitignore +7 -0
  87. data/lib/templates/gitignores/Global/LyX.gitignore +4 -0
  88. data/lib/templates/gitignores/Global/Matlab.gitignore +16 -0
  89. data/lib/templates/gitignores/Global/Mercurial.gitignore +3 -0
  90. data/lib/templates/gitignores/Global/MicrosoftOffice.gitignore +10 -0
  91. data/lib/templates/gitignores/Global/ModelSim.gitignore +23 -0
  92. data/lib/templates/gitignores/Global/Momentics.gitignore +8 -0
  93. data/lib/templates/gitignores/Global/MonoDevelop.gitignore +8 -0
  94. data/lib/templates/gitignores/Global/NetBeans.gitignore +8 -0
  95. data/lib/templates/gitignores/Global/Ninja.gitignore +2 -0
  96. data/lib/templates/gitignores/Global/NotepadPP.gitignore +2 -0
  97. data/lib/templates/gitignores/Global/OSX.gitignore +24 -0
  98. data/lib/templates/gitignores/Global/README.md +10 -0
  99. data/lib/templates/gitignores/Global/Redcar.gitignore +1 -0
  100. data/lib/templates/gitignores/Global/Redis.gitignore +3 -0
  101. data/lib/templates/gitignores/Global/SBT.gitignore +9 -0
  102. data/lib/templates/gitignores/Global/SVN.gitignore +1 -0
  103. data/lib/templates/gitignores/Global/SlickEdit.gitignore +11 -0
  104. data/lib/templates/gitignores/Global/SublimeText.gitignore +14 -0
  105. data/lib/templates/gitignores/Global/SynopsysVCS.gitignore +23 -0
  106. data/lib/templates/gitignores/Global/Tags.gitignore +14 -0
  107. data/lib/templates/gitignores/Global/TextMate.gitignore +3 -0
  108. data/lib/templates/gitignores/Global/TortoiseGit.gitignore +2 -0
  109. data/lib/templates/gitignores/Global/Vagrant.gitignore +1 -0
  110. data/lib/templates/gitignores/Global/Vim.gitignore +6 -0
  111. data/lib/templates/gitignores/Global/VirtualEnv.gitignore +9 -0
  112. data/lib/templates/gitignores/Global/WebMethods.gitignore +14 -0
  113. data/lib/templates/gitignores/Global/Windows.gitignore +18 -0
  114. data/lib/templates/gitignores/Global/Xcode.gitignore +14 -0
  115. data/lib/templates/gitignores/Global/XilinxISE.gitignore +57 -0
  116. data/lib/templates/gitignores/Go.gitignore +24 -0
  117. data/lib/templates/gitignores/Gradle.gitignore +8 -0
  118. data/lib/templates/gitignores/Grails.gitignore +33 -0
  119. data/lib/templates/gitignores/Haskell.gitignore +16 -0
  120. data/lib/templates/gitignores/IGORPro.gitignore +5 -0
  121. data/lib/templates/gitignores/Idris.gitignore +2 -0
  122. data/lib/templates/gitignores/Java.gitignore +12 -0
  123. data/lib/templates/gitignores/Jboss.gitignore +19 -0
  124. data/lib/templates/gitignores/Jekyll.gitignore +3 -0
  125. data/lib/templates/gitignores/Joomla.gitignore +525 -0
  126. data/lib/templates/gitignores/Jython.gitignore +2 -0
  127. data/lib/templates/gitignores/KiCAD.gitignore +11 -0
  128. data/lib/templates/gitignores/Kohana.gitignore +2 -0
  129. data/lib/templates/gitignores/LICENSE +19 -0
  130. data/lib/templates/gitignores/LabVIEW.gitignore +16 -0
  131. data/lib/templates/gitignores/Laravel.gitignore +4 -0
  132. data/lib/templates/gitignores/Leiningen.gitignore +12 -0
  133. data/lib/templates/gitignores/LemonStand.gitignore +21 -0
  134. data/lib/templates/gitignores/Lilypond.gitignore +6 -0
  135. data/lib/templates/gitignores/Lithium.gitignore +2 -0
  136. data/lib/templates/gitignores/Lua.gitignore +41 -0
  137. data/lib/templates/gitignores/Magento.gitignore +126 -0
  138. data/lib/templates/gitignores/Maven.gitignore +9 -0
  139. data/lib/templates/gitignores/Mercury.gitignore +13 -0
  140. data/lib/templates/gitignores/MetaProgrammingSystem.gitignore +16 -0
  141. data/lib/templates/gitignores/Meteor.gitignore +2 -0
  142. data/lib/templates/gitignores/Nanoc.gitignore +10 -0
  143. data/lib/templates/gitignores/Nim.gitignore +1 -0
  144. data/lib/templates/gitignores/Node.gitignore +27 -0
  145. data/lib/templates/gitignores/OCaml.gitignore +20 -0
  146. data/lib/templates/gitignores/Objective-C.gitignore +26 -0
  147. data/lib/templates/gitignores/Opa.gitignore +13 -0
  148. data/lib/templates/gitignores/OpenCart.gitignore +11 -0
  149. data/lib/templates/gitignores/OracleForms.gitignore +8 -0
  150. data/lib/templates/gitignores/Packer.gitignore +5 -0
  151. data/lib/templates/gitignores/Perl.gitignore +20 -0
  152. data/lib/templates/gitignores/Phalcon.gitignore +2 -0
  153. data/lib/templates/gitignores/PlayFramework.gitignore +17 -0
  154. data/lib/templates/gitignores/Plone.gitignore +18 -0
  155. data/lib/templates/gitignores/Prestashop.gitignore +25 -0
  156. data/lib/templates/gitignores/Processing.gitignore +7 -0
  157. data/lib/templates/gitignores/Python.gitignore +57 -0
  158. data/lib/templates/gitignores/Qooxdoo.gitignore +5 -0
  159. data/lib/templates/gitignores/Qt.gitignore +34 -0
  160. data/lib/templates/gitignores/R.gitignore +13 -0
  161. data/lib/templates/gitignores/README.md +79 -0
  162. data/lib/templates/gitignores/ROS.gitignore +47 -0
  163. data/lib/templates/gitignores/Rails.gitignore +35 -0
  164. data/lib/templates/gitignores/RhodesRhomobile.gitignore +9 -0
  165. data/lib/templates/gitignores/Ruby.gitignore +35 -0
  166. data/lib/templates/gitignores/Rust.gitignore +11 -0
  167. data/lib/templates/gitignores/SCons.gitignore +2 -0
  168. data/lib/templates/gitignores/Sass.gitignore +2 -0
  169. data/lib/templates/gitignores/Scala.gitignore +17 -0
  170. data/lib/templates/gitignores/Scrivener.gitignore +7 -0
  171. data/lib/templates/gitignores/Sdcc.gitignore +8 -0
  172. data/lib/templates/gitignores/SeamGen.gitignore +26 -0
  173. data/lib/templates/gitignores/SketchUp.gitignore +1 -0
  174. data/lib/templates/gitignores/Stella.gitignore +12 -0
  175. data/lib/templates/gitignores/SugarCRM.gitignore +25 -0
  176. data/lib/templates/gitignores/Swift.gitignore +33 -0
  177. data/lib/templates/gitignores/Symfony.gitignore +37 -0
  178. data/lib/templates/gitignores/SymphonyCMS.gitignore +6 -0
  179. data/lib/templates/gitignores/TeX.gitignore +126 -0
  180. data/lib/templates/gitignores/Textpattern.gitignore +11 -0
  181. data/lib/templates/gitignores/TurboGears2.gitignore +20 -0
  182. data/lib/templates/gitignores/Typo3.gitignore +18 -0
  183. data/lib/templates/gitignores/Umbraco.gitignore +17 -0
  184. data/lib/templates/gitignores/Unity.gitignore +21 -0
  185. data/lib/templates/gitignores/VVVV.gitignore +6 -0
  186. data/lib/templates/gitignores/VisualStudio.gitignore +196 -0
  187. data/lib/templates/gitignores/Waf.gitignore +3 -0
  188. data/lib/templates/gitignores/WordPress.gitignore +13 -0
  189. data/lib/templates/gitignores/Xojo.gitignore +11 -0
  190. data/lib/templates/gitignores/Yeoman.gitignore +6 -0
  191. data/lib/templates/gitignores/Yii.gitignore +6 -0
  192. data/lib/templates/gitignores/ZendFramework.gitignore +20 -0
  193. data/lib/templates/gitignores/Zephir.gitignore +26 -0
  194. data/lib/templates/templates/boot-template/static/static/___dummy-file___ +1 -0
  195. data/lib/templates/templates/boot-template/static/template.json +7 -0
  196. data/lib/templates/templates/boot-template/template.json +17 -0
  197. data/lib/templates/templates/c/builder/makefile +12 -0
  198. data/lib/templates/templates/c/builder/makefile-pch +12 -0
  199. data/lib/templates/templates/c/misc/main.h +1 -0
  200. data/lib/templates/templates/c/static/lib/___dummy-file___ +1 -0
  201. data/lib/templates/templates/c/static/src/main.c +4 -0
  202. data/lib/templates/templates/c/template.json +32 -0
  203. data/lib/templates/templates/c/vcs/.gitignore +1 -0
  204. data/lib/templates/templates/c/vcs/.svnignore +1 -0
  205. data/lib/templates/templates/gem/Gemfile +3 -0
  206. data/lib/templates/templates/gem/gemname-git.gemspec +13 -0
  207. data/lib/templates/templates/gem/static/[[!gemname]].gemspec +13 -0
  208. data/lib/templates/templates/gem/static/bin/[[!gemname]] +1 -0
  209. data/lib/templates/templates/gem/static/lib/[[!gemname]].rb +0 -0
  210. data/lib/templates/templates/gem/static/test/test_helper.rb +0 -0
  211. data/lib/templates/templates/gem/template.json +33 -0
  212. data/lib/templates/templates/wordpress-plugin/static/wp-content/plugins/[[!plugin-name]]/[[!plugin-name]].php +11 -0
  213. data/lib/templates/templates/wordpress-plugin/template.json +26 -0
  214. data/lib/templates/templates/wordpress-plugin/vcs/git/gitignore.gitignore +1 -0
  215. data/lib/templates/templates/wordpress-theme/static/wp-content/themes/[[!theme-name]]/index.php +1 -0
  216. data/lib/templates/templates/wordpress-theme/static/wp-content/themes/[[!theme-name]]/style.css +12 -0
  217. data/lib/templates/templates/wordpress-theme/template.json +26 -0
  218. data/lib/templates/templates/wordpress-theme/vcs/git/gitignore.gitignore +1 -0
  219. data/lib/templates/wordpress/index.php +17 -0
  220. data/lib/templates/wordpress/license.txt +385 -0
  221. data/lib/templates/wordpress/readme.html +98 -0
  222. data/lib/templates/wordpress/wp-activate.php +131 -0
  223. data/lib/templates/wordpress/wp-admin/about.php +166 -0
  224. data/lib/templates/wordpress/wp-admin/admin-ajax.php +99 -0
  225. data/lib/templates/wordpress/wp-admin/admin-footer.php +99 -0
  226. data/lib/templates/wordpress/wp-admin/admin-functions.php +15 -0
  227. data/lib/templates/wordpress/wp-admin/admin-header.php +249 -0
  228. data/lib/templates/wordpress/wp-admin/admin-post.php +71 -0
  229. data/lib/templates/wordpress/wp-admin/admin.php +361 -0
  230. data/lib/templates/wordpress/wp-admin/async-upload.php +115 -0
  231. data/lib/templates/wordpress/wp-admin/comment.php +330 -0
  232. data/lib/templates/wordpress/wp-admin/credits.php +192 -0
  233. data/lib/templates/wordpress/wp-admin/css/about-rtl.css +454 -0
  234. data/lib/templates/wordpress/wp-admin/css/about.css +454 -0
  235. data/lib/templates/wordpress/wp-admin/css/admin-menu-rtl.css +935 -0
  236. data/lib/templates/wordpress/wp-admin/css/admin-menu.css +935 -0
  237. data/lib/templates/wordpress/wp-admin/css/color-picker-rtl.css +127 -0
  238. data/lib/templates/wordpress/wp-admin/css/color-picker-rtl.min.css +1 -0
  239. data/lib/templates/wordpress/wp-admin/css/color-picker.css +127 -0
  240. data/lib/templates/wordpress/wp-admin/css/color-picker.min.css +1 -0
  241. data/lib/templates/wordpress/wp-admin/css/colors/_admin.scss +521 -0
  242. data/lib/templates/wordpress/wp-admin/css/colors/_mixins.scss +43 -0
  243. data/lib/templates/wordpress/wp-admin/css/colors/_variables.scss +58 -0
  244. data/lib/templates/wordpress/wp-admin/css/colors/blue/colors-rtl.css +330 -0
  245. data/lib/templates/wordpress/wp-admin/css/colors/blue/colors-rtl.min.css +1 -0
  246. data/lib/templates/wordpress/wp-admin/css/colors/blue/colors.css +330 -0
  247. data/lib/templates/wordpress/wp-admin/css/colors/blue/colors.min.css +1 -0
  248. data/lib/templates/wordpress/wp-admin/css/colors/blue/colors.scss +11 -0
  249. data/lib/templates/wordpress/wp-admin/css/colors/coffee/colors-rtl.css +330 -0
  250. data/lib/templates/wordpress/wp-admin/css/colors/coffee/colors-rtl.min.css +1 -0
  251. data/lib/templates/wordpress/wp-admin/css/colors/coffee/colors.css +330 -0
  252. data/lib/templates/wordpress/wp-admin/css/colors/coffee/colors.min.css +1 -0
  253. data/lib/templates/wordpress/wp-admin/css/colors/coffee/colors.scss +7 -0
  254. data/lib/templates/wordpress/wp-admin/css/colors/ectoplasm/colors-rtl.css +330 -0
  255. data/lib/templates/wordpress/wp-admin/css/colors/ectoplasm/colors-rtl.min.css +1 -0
  256. data/lib/templates/wordpress/wp-admin/css/colors/ectoplasm/colors.css +330 -0
  257. data/lib/templates/wordpress/wp-admin/css/colors/ectoplasm/colors.min.css +1 -0
  258. data/lib/templates/wordpress/wp-admin/css/colors/ectoplasm/colors.scss +8 -0
  259. data/lib/templates/wordpress/wp-admin/css/colors/light/colors-rtl.css +338 -0
  260. data/lib/templates/wordpress/wp-admin/css/colors/light/colors-rtl.min.css +1 -0
  261. data/lib/templates/wordpress/wp-admin/css/colors/light/colors.css +338 -0
  262. data/lib/templates/wordpress/wp-admin/css/colors/light/colors.min.css +1 -0
  263. data/lib/templates/wordpress/wp-admin/css/colors/light/colors.scss +38 -0
  264. data/lib/templates/wordpress/wp-admin/css/colors/midnight/colors-rtl.css +330 -0
  265. data/lib/templates/wordpress/wp-admin/css/colors/midnight/colors-rtl.min.css +1 -0
  266. data/lib/templates/wordpress/wp-admin/css/colors/midnight/colors.css +330 -0
  267. data/lib/templates/wordpress/wp-admin/css/colors/midnight/colors.min.css +1 -0
  268. data/lib/templates/wordpress/wp-admin/css/colors/midnight/colors.scss +5 -0
  269. data/lib/templates/wordpress/wp-admin/css/colors/ocean/colors-rtl.css +330 -0
  270. data/lib/templates/wordpress/wp-admin/css/colors/ocean/colors-rtl.min.css +1 -0
  271. data/lib/templates/wordpress/wp-admin/css/colors/ocean/colors.css +330 -0
  272. data/lib/templates/wordpress/wp-admin/css/colors/ocean/colors.min.css +1 -0
  273. data/lib/templates/wordpress/wp-admin/css/colors/ocean/colors.scss +8 -0
  274. data/lib/templates/wordpress/wp-admin/css/colors/sunrise/colors-rtl.css +330 -0
  275. data/lib/templates/wordpress/wp-admin/css/colors/sunrise/colors-rtl.min.css +1 -0
  276. data/lib/templates/wordpress/wp-admin/css/colors/sunrise/colors.css +330 -0
  277. data/lib/templates/wordpress/wp-admin/css/colors/sunrise/colors.min.css +1 -0
  278. data/lib/templates/wordpress/wp-admin/css/colors/sunrise/colors.scss +6 -0
  279. data/lib/templates/wordpress/wp-admin/css/common-rtl.css +3289 -0
  280. data/lib/templates/wordpress/wp-admin/css/common.css +3289 -0
  281. data/lib/templates/wordpress/wp-admin/css/customize-controls-rtl.css +1191 -0
  282. data/lib/templates/wordpress/wp-admin/css/customize-controls-rtl.min.css +1 -0
  283. data/lib/templates/wordpress/wp-admin/css/customize-controls.css +1191 -0
  284. data/lib/templates/wordpress/wp-admin/css/customize-controls.min.css +1 -0
  285. data/lib/templates/wordpress/wp-admin/css/customize-widgets-rtl.css +636 -0
  286. data/lib/templates/wordpress/wp-admin/css/customize-widgets-rtl.min.css +1 -0
  287. data/lib/templates/wordpress/wp-admin/css/customize-widgets.css +636 -0
  288. data/lib/templates/wordpress/wp-admin/css/customize-widgets.min.css +1 -0
  289. data/lib/templates/wordpress/wp-admin/css/dashboard-rtl.css +1111 -0
  290. data/lib/templates/wordpress/wp-admin/css/dashboard.css +1111 -0
  291. data/lib/templates/wordpress/wp-admin/css/deprecated-media-rtl.css +407 -0
  292. data/lib/templates/wordpress/wp-admin/css/deprecated-media-rtl.min.css +1 -0
  293. data/lib/templates/wordpress/wp-admin/css/deprecated-media.css +407 -0
  294. data/lib/templates/wordpress/wp-admin/css/deprecated-media.min.css +1 -0
  295. data/lib/templates/wordpress/wp-admin/css/edit-rtl.css +1589 -0
  296. data/lib/templates/wordpress/wp-admin/css/edit.css +1589 -0
  297. data/lib/templates/wordpress/wp-admin/css/farbtastic-rtl.css +41 -0
  298. data/lib/templates/wordpress/wp-admin/css/farbtastic.css +41 -0
  299. data/lib/templates/wordpress/wp-admin/css/forms-rtl.css +1175 -0
  300. data/lib/templates/wordpress/wp-admin/css/forms.css +1175 -0
  301. data/lib/templates/wordpress/wp-admin/css/ie-rtl.css +785 -0
  302. data/lib/templates/wordpress/wp-admin/css/ie-rtl.min.css +1 -0
  303. data/lib/templates/wordpress/wp-admin/css/ie.css +785 -0
  304. data/lib/templates/wordpress/wp-admin/css/ie.min.css +1 -0
  305. data/lib/templates/wordpress/wp-admin/css/install-rtl.css +388 -0
  306. data/lib/templates/wordpress/wp-admin/css/install-rtl.min.css +1 -0
  307. data/lib/templates/wordpress/wp-admin/css/install.css +388 -0
  308. data/lib/templates/wordpress/wp-admin/css/install.min.css +1 -0
  309. data/lib/templates/wordpress/wp-admin/css/l10n-rtl.css +111 -0
  310. data/lib/templates/wordpress/wp-admin/css/l10n.css +111 -0
  311. data/lib/templates/wordpress/wp-admin/css/list-tables-rtl.css +1925 -0
  312. data/lib/templates/wordpress/wp-admin/css/list-tables.css +1925 -0
  313. data/lib/templates/wordpress/wp-admin/css/login-rtl.css +265 -0
  314. data/lib/templates/wordpress/wp-admin/css/login-rtl.min.css +1 -0
  315. data/lib/templates/wordpress/wp-admin/css/login.css +265 -0
  316. data/lib/templates/wordpress/wp-admin/css/login.min.css +1 -0
  317. data/lib/templates/wordpress/wp-admin/css/media-rtl.css +1193 -0
  318. data/lib/templates/wordpress/wp-admin/css/media.css +1193 -0
  319. data/lib/templates/wordpress/wp-admin/css/nav-menus-rtl.css +865 -0
  320. data/lib/templates/wordpress/wp-admin/css/nav-menus.css +865 -0
  321. data/lib/templates/wordpress/wp-admin/css/press-this-editor-rtl.css +123 -0
  322. data/lib/templates/wordpress/wp-admin/css/press-this-editor.css +123 -0
  323. data/lib/templates/wordpress/wp-admin/css/press-this-rtl.css +2039 -0
  324. data/lib/templates/wordpress/wp-admin/css/press-this-rtl.min.css +1 -0
  325. data/lib/templates/wordpress/wp-admin/css/press-this.css +2039 -0
  326. data/lib/templates/wordpress/wp-admin/css/press-this.min.css +1 -0
  327. data/lib/templates/wordpress/wp-admin/css/revisions-rtl.css +575 -0
  328. data/lib/templates/wordpress/wp-admin/css/revisions.css +575 -0
  329. data/lib/templates/wordpress/wp-admin/css/themes-rtl.css +1760 -0
  330. data/lib/templates/wordpress/wp-admin/css/themes.css +1760 -0
  331. data/lib/templates/wordpress/wp-admin/css/widgets-rtl.css +579 -0
  332. data/lib/templates/wordpress/wp-admin/css/widgets.css +579 -0
  333. data/lib/templates/wordpress/wp-admin/css/wp-admin-rtl.css +13 -0
  334. data/lib/templates/wordpress/wp-admin/css/wp-admin-rtl.min.css +8 -0
  335. data/lib/templates/wordpress/wp-admin/css/wp-admin.css +13 -0
  336. data/lib/templates/wordpress/wp-admin/css/wp-admin.min.css +8 -0
  337. data/lib/templates/wordpress/wp-admin/custom-background.php +472 -0
  338. data/lib/templates/wordpress/wp-admin/custom-header.php +1303 -0
  339. data/lib/templates/wordpress/wp-admin/customize.php +300 -0
  340. data/lib/templates/wordpress/wp-admin/edit-comments.php +254 -0
  341. data/lib/templates/wordpress/wp-admin/edit-form-advanced.php +668 -0
  342. data/lib/templates/wordpress/wp-admin/edit-form-comment.php +189 -0
  343. data/lib/templates/wordpress/wp-admin/edit-link-form.php +150 -0
  344. data/lib/templates/wordpress/wp-admin/edit-tag-form.php +228 -0
  345. data/lib/templates/wordpress/wp-admin/edit-tags.php +603 -0
  346. data/lib/templates/wordpress/wp-admin/edit.php +338 -0
  347. data/lib/templates/wordpress/wp-admin/export.php +242 -0
  348. data/lib/templates/wordpress/wp-admin/freedoms.php +57 -0
  349. data/lib/templates/wordpress/wp-admin/images/align-center-2x.png +0 -0
  350. data/lib/templates/wordpress/wp-admin/images/align-center.png +0 -0
  351. data/lib/templates/wordpress/wp-admin/images/align-left-2x.png +0 -0
  352. data/lib/templates/wordpress/wp-admin/images/align-left.png +0 -0
  353. data/lib/templates/wordpress/wp-admin/images/align-none-2x.png +0 -0
  354. data/lib/templates/wordpress/wp-admin/images/align-none.png +0 -0
  355. data/lib/templates/wordpress/wp-admin/images/align-right-2x.png +0 -0
  356. data/lib/templates/wordpress/wp-admin/images/align-right.png +0 -0
  357. data/lib/templates/wordpress/wp-admin/images/arrows-2x.png +0 -0
  358. data/lib/templates/wordpress/wp-admin/images/arrows.png +0 -0
  359. data/lib/templates/wordpress/wp-admin/images/bubble_bg-2x.gif +0 -0
  360. data/lib/templates/wordpress/wp-admin/images/bubble_bg.gif +0 -0
  361. data/lib/templates/wordpress/wp-admin/images/comment-grey-bubble-2x.png +0 -0
  362. data/lib/templates/wordpress/wp-admin/images/comment-grey-bubble.png +0 -0
  363. data/lib/templates/wordpress/wp-admin/images/date-button-2x.gif +0 -0
  364. data/lib/templates/wordpress/wp-admin/images/date-button.gif +0 -0
  365. data/lib/templates/wordpress/wp-admin/images/generic.png +0 -0
  366. data/lib/templates/wordpress/wp-admin/images/icons32-2x.png +0 -0
  367. data/lib/templates/wordpress/wp-admin/images/icons32-vs-2x.png +0 -0
  368. data/lib/templates/wordpress/wp-admin/images/icons32-vs.png +0 -0
  369. data/lib/templates/wordpress/wp-admin/images/icons32.png +0 -0
  370. data/lib/templates/wordpress/wp-admin/images/imgedit-icons-2x.png +0 -0
  371. data/lib/templates/wordpress/wp-admin/images/imgedit-icons.png +0 -0
  372. data/lib/templates/wordpress/wp-admin/images/list-2x.png +0 -0
  373. data/lib/templates/wordpress/wp-admin/images/list.png +0 -0
  374. data/lib/templates/wordpress/wp-admin/images/loading.gif +0 -0
  375. data/lib/templates/wordpress/wp-admin/images/marker.png +0 -0
  376. data/lib/templates/wordpress/wp-admin/images/mask.png +0 -0
  377. data/lib/templates/wordpress/wp-admin/images/media-button-2x.png +0 -0
  378. data/lib/templates/wordpress/wp-admin/images/media-button-image.gif +0 -0
  379. data/lib/templates/wordpress/wp-admin/images/media-button-music.gif +0 -0
  380. data/lib/templates/wordpress/wp-admin/images/media-button-other.gif +0 -0
  381. data/lib/templates/wordpress/wp-admin/images/media-button-video.gif +0 -0
  382. data/lib/templates/wordpress/wp-admin/images/media-button.png +0 -0
  383. data/lib/templates/wordpress/wp-admin/images/menu-2x.png +0 -0
  384. data/lib/templates/wordpress/wp-admin/images/menu-vs-2x.png +0 -0
  385. data/lib/templates/wordpress/wp-admin/images/menu-vs.png +0 -0
  386. data/lib/templates/wordpress/wp-admin/images/menu.png +0 -0
  387. data/lib/templates/wordpress/wp-admin/images/no.png +0 -0
  388. data/lib/templates/wordpress/wp-admin/images/post-formats-vs.png +0 -0
  389. data/lib/templates/wordpress/wp-admin/images/post-formats.png +0 -0
  390. data/lib/templates/wordpress/wp-admin/images/post-formats32-vs.png +0 -0
  391. data/lib/templates/wordpress/wp-admin/images/post-formats32.png +0 -0
  392. data/lib/templates/wordpress/wp-admin/images/resize-2x.gif +0 -0
  393. data/lib/templates/wordpress/wp-admin/images/resize-rtl-2x.gif +0 -0
  394. data/lib/templates/wordpress/wp-admin/images/resize-rtl.gif +0 -0
  395. data/lib/templates/wordpress/wp-admin/images/resize.gif +0 -0
  396. data/lib/templates/wordpress/wp-admin/images/se.png +0 -0
  397. data/lib/templates/wordpress/wp-admin/images/sort-2x.gif +0 -0
  398. data/lib/templates/wordpress/wp-admin/images/sort.gif +0 -0
  399. data/lib/templates/wordpress/wp-admin/images/spinner-2x.gif +0 -0
  400. data/lib/templates/wordpress/wp-admin/images/spinner.gif +0 -0
  401. data/lib/templates/wordpress/wp-admin/images/stars-2x.png +0 -0
  402. data/lib/templates/wordpress/wp-admin/images/stars.png +0 -0
  403. data/lib/templates/wordpress/wp-admin/images/w-logo-blue.png +0 -0
  404. data/lib/templates/wordpress/wp-admin/images/w-logo-white.png +0 -0
  405. data/lib/templates/wordpress/wp-admin/images/wheel.png +0 -0
  406. data/lib/templates/wordpress/wp-admin/images/wordpress-logo-white.svg +1 -0
  407. data/lib/templates/wordpress/wp-admin/images/wordpress-logo.png +0 -0
  408. data/lib/templates/wordpress/wp-admin/images/wordpress-logo.svg +1 -0
  409. data/lib/templates/wordpress/wp-admin/images/wpspin_light-2x.gif +0 -0
  410. data/lib/templates/wordpress/wp-admin/images/wpspin_light.gif +0 -0
  411. data/lib/templates/wordpress/wp-admin/images/xit-2x.gif +0 -0
  412. data/lib/templates/wordpress/wp-admin/images/xit.gif +0 -0
  413. data/lib/templates/wordpress/wp-admin/images/yes.png +0 -0
  414. data/lib/templates/wordpress/wp-admin/import.php +130 -0
  415. data/lib/templates/wordpress/wp-admin/includes/admin.php +74 -0
  416. data/lib/templates/wordpress/wp-admin/includes/ajax-actions.php +2973 -0
  417. data/lib/templates/wordpress/wp-admin/includes/bookmark.php +305 -0
  418. data/lib/templates/wordpress/wp-admin/includes/class-ftp-pure.php +190 -0
  419. data/lib/templates/wordpress/wp-admin/includes/class-ftp-sockets.php +250 -0
  420. data/lib/templates/wordpress/wp-admin/includes/class-ftp.php +906 -0
  421. data/lib/templates/wordpress/wp-admin/includes/class-pclzip.php +5687 -0
  422. data/lib/templates/wordpress/wp-admin/includes/class-wp-comments-list-table.php +643 -0
  423. data/lib/templates/wordpress/wp-admin/includes/class-wp-filesystem-base.php +766 -0
  424. data/lib/templates/wordpress/wp-admin/includes/class-wp-filesystem-direct.php +463 -0
  425. data/lib/templates/wordpress/wp-admin/includes/class-wp-filesystem-ftpext.php +513 -0
  426. data/lib/templates/wordpress/wp-admin/includes/class-wp-filesystem-ftpsockets.php +446 -0
  427. data/lib/templates/wordpress/wp-admin/includes/class-wp-filesystem-ssh2.php +505 -0
  428. data/lib/templates/wordpress/wp-admin/includes/class-wp-importer.php +301 -0
  429. data/lib/templates/wordpress/wp-admin/includes/class-wp-links-list-table.php +208 -0
  430. data/lib/templates/wordpress/wp-admin/includes/class-wp-list-table.php +1141 -0
  431. data/lib/templates/wordpress/wp-admin/includes/class-wp-media-list-table.php +556 -0
  432. data/lib/templates/wordpress/wp-admin/includes/class-wp-ms-sites-list-table.php +404 -0
  433. data/lib/templates/wordpress/wp-admin/includes/class-wp-ms-themes-list-table.php +480 -0
  434. data/lib/templates/wordpress/wp-admin/includes/class-wp-ms-users-list-table.php +306 -0
  435. data/lib/templates/wordpress/wp-admin/includes/class-wp-plugin-install-list-table.php +515 -0
  436. data/lib/templates/wordpress/wp-admin/includes/class-wp-plugins-list-table.php +648 -0
  437. data/lib/templates/wordpress/wp-admin/includes/class-wp-posts-list-table.php +1416 -0
  438. data/lib/templates/wordpress/wp-admin/includes/class-wp-press-this.php +1466 -0
  439. data/lib/templates/wordpress/wp-admin/includes/class-wp-terms-list-table.php +513 -0
  440. data/lib/templates/wordpress/wp-admin/includes/class-wp-theme-install-list-table.php +431 -0
  441. data/lib/templates/wordpress/wp-admin/includes/class-wp-themes-list-table.php +285 -0
  442. data/lib/templates/wordpress/wp-admin/includes/class-wp-upgrader-skins.php +783 -0
  443. data/lib/templates/wordpress/wp-admin/includes/class-wp-upgrader.php +3254 -0
  444. data/lib/templates/wordpress/wp-admin/includes/class-wp-users-list-table.php +460 -0
  445. data/lib/templates/wordpress/wp-admin/includes/comment.php +173 -0
  446. data/lib/templates/wordpress/wp-admin/includes/continents-cities.php +493 -0
  447. data/lib/templates/wordpress/wp-admin/includes/dashboard.php +1341 -0
  448. data/lib/templates/wordpress/wp-admin/includes/deprecated.php +1183 -0
  449. data/lib/templates/wordpress/wp-admin/includes/export.php +510 -0
  450. data/lib/templates/wordpress/wp-admin/includes/file.php +1229 -0
  451. data/lib/templates/wordpress/wp-admin/includes/image-edit.php +861 -0
  452. data/lib/templates/wordpress/wp-admin/includes/image.php +600 -0
  453. data/lib/templates/wordpress/wp-admin/includes/import.php +204 -0
  454. data/lib/templates/wordpress/wp-admin/includes/list-table.php +113 -0
  455. data/lib/templates/wordpress/wp-admin/includes/media.php +3083 -0
  456. data/lib/templates/wordpress/wp-admin/includes/menu.php +322 -0
  457. data/lib/templates/wordpress/wp-admin/includes/meta-boxes.php +1132 -0
  458. data/lib/templates/wordpress/wp-admin/includes/misc.php +889 -0
  459. data/lib/templates/wordpress/wp-admin/includes/ms-deprecated.php +77 -0
  460. data/lib/templates/wordpress/wp-admin/includes/ms.php +971 -0
  461. data/lib/templates/wordpress/wp-admin/includes/nav-menu.php +1324 -0
  462. data/lib/templates/wordpress/wp-admin/includes/plugin-install.php +580 -0
  463. data/lib/templates/wordpress/wp-admin/includes/plugin.php +1892 -0
  464. data/lib/templates/wordpress/wp-admin/includes/post.php +1742 -0
  465. data/lib/templates/wordpress/wp-admin/includes/revision.php +378 -0
  466. data/lib/templates/wordpress/wp-admin/includes/schema.php +1046 -0
  467. data/lib/templates/wordpress/wp-admin/includes/screen.php +1185 -0
  468. data/lib/templates/wordpress/wp-admin/includes/taxonomy.php +290 -0
  469. data/lib/templates/wordpress/wp-admin/includes/template.php +2248 -0
  470. data/lib/templates/wordpress/wp-admin/includes/theme-install.php +205 -0
  471. data/lib/templates/wordpress/wp-admin/includes/theme.php +564 -0
  472. data/lib/templates/wordpress/wp-admin/includes/translation-install.php +241 -0
  473. data/lib/templates/wordpress/wp-admin/includes/update-core.php +1190 -0
  474. data/lib/templates/wordpress/wp-admin/includes/update.php +435 -0
  475. data/lib/templates/wordpress/wp-admin/includes/upgrade.php +2410 -0
  476. data/lib/templates/wordpress/wp-admin/includes/user.php +442 -0
  477. data/lib/templates/wordpress/wp-admin/includes/widgets.php +245 -0
  478. data/lib/templates/wordpress/wp-admin/index.php +132 -0
  479. data/lib/templates/wordpress/wp-admin/install-helper.php +198 -0
  480. data/lib/templates/wordpress/wp-admin/install.php +307 -0
  481. data/lib/templates/wordpress/wp-admin/js/accordion.js +75 -0
  482. data/lib/templates/wordpress/wp-admin/js/accordion.min.js +1 -0
  483. data/lib/templates/wordpress/wp-admin/js/bookmarklet.js +166 -0
  484. data/lib/templates/wordpress/wp-admin/js/bookmarklet.min.js +1 -0
  485. data/lib/templates/wordpress/wp-admin/js/color-picker.js +157 -0
  486. data/lib/templates/wordpress/wp-admin/js/color-picker.min.js +1 -0
  487. data/lib/templates/wordpress/wp-admin/js/comment.js +50 -0
  488. data/lib/templates/wordpress/wp-admin/js/comment.min.js +1 -0
  489. data/lib/templates/wordpress/wp-admin/js/common.js +893 -0
  490. data/lib/templates/wordpress/wp-admin/js/common.min.js +1 -0
  491. data/lib/templates/wordpress/wp-admin/js/custom-background.js +75 -0
  492. data/lib/templates/wordpress/wp-admin/js/custom-background.min.js +1 -0
  493. data/lib/templates/wordpress/wp-admin/js/custom-header.js +61 -0
  494. data/lib/templates/wordpress/wp-admin/js/customize-controls.js +3071 -0
  495. data/lib/templates/wordpress/wp-admin/js/customize-controls.min.js +2 -0
  496. data/lib/templates/wordpress/wp-admin/js/customize-widgets.js +2024 -0
  497. data/lib/templates/wordpress/wp-admin/js/customize-widgets.min.js +1 -0
  498. data/lib/templates/wordpress/wp-admin/js/dashboard.js +190 -0
  499. data/lib/templates/wordpress/wp-admin/js/dashboard.min.js +1 -0
  500. data/lib/templates/wordpress/wp-admin/js/edit-comments.js +627 -0
  501. data/lib/templates/wordpress/wp-admin/js/edit-comments.min.js +1 -0
  502. data/lib/templates/wordpress/wp-admin/js/editor-expand.js +1237 -0
  503. data/lib/templates/wordpress/wp-admin/js/editor-expand.min.js +1 -0
  504. data/lib/templates/wordpress/wp-admin/js/editor.js +324 -0
  505. data/lib/templates/wordpress/wp-admin/js/editor.min.js +1 -0
  506. data/lib/templates/wordpress/wp-admin/js/farbtastic.js +276 -0
  507. data/lib/templates/wordpress/wp-admin/js/gallery.js +237 -0
  508. data/lib/templates/wordpress/wp-admin/js/gallery.min.js +1 -0
  509. data/lib/templates/wordpress/wp-admin/js/image-edit.js +633 -0
  510. data/lib/templates/wordpress/wp-admin/js/image-edit.min.js +1 -0
  511. data/lib/templates/wordpress/wp-admin/js/inline-edit-post.js +360 -0
  512. data/lib/templates/wordpress/wp-admin/js/inline-edit-post.min.js +1 -0
  513. data/lib/templates/wordpress/wp-admin/js/inline-edit-tax.js +152 -0
  514. data/lib/templates/wordpress/wp-admin/js/inline-edit-tax.min.js +1 -0
  515. data/lib/templates/wordpress/wp-admin/js/iris.min.js +4 -0
  516. data/lib/templates/wordpress/wp-admin/js/language-chooser.js +26 -0
  517. data/lib/templates/wordpress/wp-admin/js/language-chooser.min.js +1 -0
  518. data/lib/templates/wordpress/wp-admin/js/link.js +69 -0
  519. data/lib/templates/wordpress/wp-admin/js/link.min.js +1 -0
  520. data/lib/templates/wordpress/wp-admin/js/media-gallery.js +26 -0
  521. data/lib/templates/wordpress/wp-admin/js/media-gallery.min.js +1 -0
  522. data/lib/templates/wordpress/wp-admin/js/media-upload.js +69 -0
  523. data/lib/templates/wordpress/wp-admin/js/media-upload.min.js +1 -0
  524. data/lib/templates/wordpress/wp-admin/js/media.js +114 -0
  525. data/lib/templates/wordpress/wp-admin/js/media.min.js +1 -0
  526. data/lib/templates/wordpress/wp-admin/js/nav-menu.js +1237 -0
  527. data/lib/templates/wordpress/wp-admin/js/nav-menu.min.js +1 -0
  528. data/lib/templates/wordpress/wp-admin/js/password-strength-meter.js +75 -0
  529. data/lib/templates/wordpress/wp-admin/js/password-strength-meter.min.js +1 -0
  530. data/lib/templates/wordpress/wp-admin/js/plugin-install.js +72 -0
  531. data/lib/templates/wordpress/wp-admin/js/plugin-install.min.js +1 -0
  532. data/lib/templates/wordpress/wp-admin/js/post.js +926 -0
  533. data/lib/templates/wordpress/wp-admin/js/post.min.js +1 -0
  534. data/lib/templates/wordpress/wp-admin/js/postbox.js +199 -0
  535. data/lib/templates/wordpress/wp-admin/js/postbox.min.js +1 -0
  536. data/lib/templates/wordpress/wp-admin/js/press-this.js +796 -0
  537. data/lib/templates/wordpress/wp-admin/js/press-this.min.js +1 -0
  538. data/lib/templates/wordpress/wp-admin/js/revisions.js +1166 -0
  539. data/lib/templates/wordpress/wp-admin/js/revisions.min.js +1 -0
  540. data/lib/templates/wordpress/wp-admin/js/set-post-thumbnail.js +24 -0
  541. data/lib/templates/wordpress/wp-admin/js/set-post-thumbnail.min.js +1 -0
  542. data/lib/templates/wordpress/wp-admin/js/svg-painter.js +240 -0
  543. data/lib/templates/wordpress/wp-admin/js/svg-painter.min.js +1 -0
  544. data/lib/templates/wordpress/wp-admin/js/tags-box.js +202 -0
  545. data/lib/templates/wordpress/wp-admin/js/tags-box.min.js +1 -0
  546. data/lib/templates/wordpress/wp-admin/js/tags.js +72 -0
  547. data/lib/templates/wordpress/wp-admin/js/tags.min.js +1 -0
  548. data/lib/templates/wordpress/wp-admin/js/theme.js +1726 -0
  549. data/lib/templates/wordpress/wp-admin/js/theme.min.js +1 -0
  550. data/lib/templates/wordpress/wp-admin/js/updates.js +553 -0
  551. data/lib/templates/wordpress/wp-admin/js/updates.min.js +1 -0
  552. data/lib/templates/wordpress/wp-admin/js/user-profile.js +149 -0
  553. data/lib/templates/wordpress/wp-admin/js/user-profile.min.js +1 -0
  554. data/lib/templates/wordpress/wp-admin/js/user-suggest.js +30 -0
  555. data/lib/templates/wordpress/wp-admin/js/user-suggest.min.js +1 -0
  556. data/lib/templates/wordpress/wp-admin/js/widgets.js +494 -0
  557. data/lib/templates/wordpress/wp-admin/js/widgets.min.js +1 -0
  558. data/lib/templates/wordpress/wp-admin/js/word-count.js +44 -0
  559. data/lib/templates/wordpress/wp-admin/js/word-count.min.js +1 -0
  560. data/lib/templates/wordpress/wp-admin/js/wp-fullscreen.js +704 -0
  561. data/lib/templates/wordpress/wp-admin/js/wp-fullscreen.min.js +1 -0
  562. data/lib/templates/wordpress/wp-admin/js/xfn.js +17 -0
  563. data/lib/templates/wordpress/wp-admin/js/xfn.min.js +1 -0
  564. data/lib/templates/wordpress/wp-admin/link-add.php +29 -0
  565. data/lib/templates/wordpress/wp-admin/link-manager.php +99 -0
  566. data/lib/templates/wordpress/wp-admin/link-parse-opml.php +87 -0
  567. data/lib/templates/wordpress/wp-admin/link.php +117 -0
  568. data/lib/templates/wordpress/wp-admin/load-scripts.php +162 -0
  569. data/lib/templates/wordpress/wp-admin/load-styles.php +153 -0
  570. data/lib/templates/wordpress/wp-admin/maint/repair.php +124 -0
  571. data/lib/templates/wordpress/wp-admin/media-new.php +84 -0
  572. data/lib/templates/wordpress/wp-admin/media-upload.php +103 -0
  573. data/lib/templates/wordpress/wp-admin/media.php +146 -0
  574. data/lib/templates/wordpress/wp-admin/menu-header.php +242 -0
  575. data/lib/templates/wordpress/wp-admin/menu.php +269 -0
  576. data/lib/templates/wordpress/wp-admin/moderation.php +12 -0
  577. data/lib/templates/wordpress/wp-admin/ms-admin.php +13 -0
  578. data/lib/templates/wordpress/wp-admin/ms-delete-site.php +94 -0
  579. data/lib/templates/wordpress/wp-admin/ms-edit.php +13 -0
  580. data/lib/templates/wordpress/wp-admin/ms-options.php +12 -0
  581. data/lib/templates/wordpress/wp-admin/ms-sites.php +13 -0
  582. data/lib/templates/wordpress/wp-admin/ms-themes.php +13 -0
  583. data/lib/templates/wordpress/wp-admin/ms-upgrade-network.php +13 -0
  584. data/lib/templates/wordpress/wp-admin/ms-users.php +13 -0
  585. data/lib/templates/wordpress/wp-admin/my-sites.php +143 -0
  586. data/lib/templates/wordpress/wp-admin/nav-menus.php +796 -0
  587. data/lib/templates/wordpress/wp-admin/network.php +580 -0
  588. data/lib/templates/wordpress/wp-admin/network/about.php +16 -0
  589. data/lib/templates/wordpress/wp-admin/network/admin.php +32 -0
  590. data/lib/templates/wordpress/wp-admin/network/credits.php +16 -0
  591. data/lib/templates/wordpress/wp-admin/network/edit.php +42 -0
  592. data/lib/templates/wordpress/wp-admin/network/freedoms.php +16 -0
  593. data/lib/templates/wordpress/wp-admin/network/index.php +79 -0
  594. data/lib/templates/wordpress/wp-admin/network/menu.php +63 -0
  595. data/lib/templates/wordpress/wp-admin/network/plugin-editor.php +16 -0
  596. data/lib/templates/wordpress/wp-admin/network/plugin-install.php +19 -0
  597. data/lib/templates/wordpress/wp-admin/network/plugins.php +16 -0
  598. data/lib/templates/wordpress/wp-admin/network/profile.php +16 -0
  599. data/lib/templates/wordpress/wp-admin/network/settings.php +405 -0
  600. data/lib/templates/wordpress/wp-admin/network/setup.php +16 -0
  601. data/lib/templates/wordpress/wp-admin/network/site-info.php +187 -0
  602. data/lib/templates/wordpress/wp-admin/network/site-new.php +170 -0
  603. data/lib/templates/wordpress/wp-admin/network/site-settings.php +173 -0
  604. data/lib/templates/wordpress/wp-admin/network/site-themes.php +195 -0
  605. data/lib/templates/wordpress/wp-admin/network/site-users.php +317 -0
  606. data/lib/templates/wordpress/wp-admin/network/sites.php +275 -0
  607. data/lib/templates/wordpress/wp-admin/network/theme-editor.php +16 -0
  608. data/lib/templates/wordpress/wp-admin/network/theme-install.php +19 -0
  609. data/lib/templates/wordpress/wp-admin/network/themes.php +323 -0
  610. data/lib/templates/wordpress/wp-admin/network/update-core.php +16 -0
  611. data/lib/templates/wordpress/wp-admin/network/update.php +19 -0
  612. data/lib/templates/wordpress/wp-admin/network/upgrade.php +129 -0
  613. data/lib/templates/wordpress/wp-admin/network/user-edit.php +16 -0
  614. data/lib/templates/wordpress/wp-admin/network/user-new.php +107 -0
  615. data/lib/templates/wordpress/wp-admin/network/users.php +329 -0
  616. data/lib/templates/wordpress/wp-admin/options-discussion.php +306 -0
  617. data/lib/templates/wordpress/wp-admin/options-general.php +387 -0
  618. data/lib/templates/wordpress/wp-admin/options-head.php +18 -0
  619. data/lib/templates/wordpress/wp-admin/options-media.php +136 -0
  620. data/lib/templates/wordpress/wp-admin/options-permalink.php +288 -0
  621. data/lib/templates/wordpress/wp-admin/options-reading.php +182 -0
  622. data/lib/templates/wordpress/wp-admin/options-writing.php +178 -0
  623. data/lib/templates/wordpress/wp-admin/options.php +277 -0
  624. data/lib/templates/wordpress/wp-admin/plugin-editor.php +279 -0
  625. data/lib/templates/wordpress/wp-admin/plugin-install.php +138 -0
  626. data/lib/templates/wordpress/wp-admin/plugins.php +489 -0
  627. data/lib/templates/wordpress/wp-admin/post-new.php +76 -0
  628. data/lib/templates/wordpress/wp-admin/post.php +320 -0
  629. data/lib/templates/wordpress/wp-admin/press-this.php +21 -0
  630. data/lib/templates/wordpress/wp-admin/profile.php +18 -0
  631. data/lib/templates/wordpress/wp-admin/revision.php +135 -0
  632. data/lib/templates/wordpress/wp-admin/setup-config.php +352 -0
  633. data/lib/templates/wordpress/wp-admin/theme-editor.php +241 -0
  634. data/lib/templates/wordpress/wp-admin/theme-install.php +271 -0
  635. data/lib/templates/wordpress/wp-admin/themes.php +422 -0
  636. data/lib/templates/wordpress/wp-admin/tools.php +119 -0
  637. data/lib/templates/wordpress/wp-admin/update-core.php +661 -0
  638. data/lib/templates/wordpress/wp-admin/update.php +272 -0
  639. data/lib/templates/wordpress/wp-admin/upgrade-functions.php +12 -0
  640. data/lib/templates/wordpress/wp-admin/upgrade.php +120 -0
  641. data/lib/templates/wordpress/wp-admin/upload.php +294 -0
  642. data/lib/templates/wordpress/wp-admin/user-edit.php +592 -0
  643. data/lib/templates/wordpress/wp-admin/user-new.php +440 -0
  644. data/lib/templates/wordpress/wp-admin/user/about.php +13 -0
  645. data/lib/templates/wordpress/wp-admin/user/admin.php +32 -0
  646. data/lib/templates/wordpress/wp-admin/user/credits.php +13 -0
  647. data/lib/templates/wordpress/wp-admin/user/freedoms.php +13 -0
  648. data/lib/templates/wordpress/wp-admin/user/index.php +13 -0
  649. data/lib/templates/wordpress/wp-admin/user/menu.php +22 -0
  650. data/lib/templates/wordpress/wp-admin/user/profile.php +13 -0
  651. data/lib/templates/wordpress/wp-admin/user/user-edit.php +13 -0
  652. data/lib/templates/wordpress/wp-admin/users.php +475 -0
  653. data/lib/templates/wordpress/wp-admin/widgets.php +459 -0
  654. data/lib/templates/wordpress/wp-blog-header.php +18 -0
  655. data/lib/templates/wordpress/wp-comments-post.php +167 -0
  656. data/lib/templates/wordpress/wp-config-sample.php +80 -0
  657. data/lib/templates/wordpress/wp-content/index.php +2 -0
  658. data/lib/templates/wordpress/wp-content/plugins/akismet/.htaccess +34 -0
  659. data/lib/templates/wordpress/wp-content/plugins/akismet/_inc/akismet.css +366 -0
  660. data/lib/templates/wordpress/wp-content/plugins/akismet/_inc/akismet.js +160 -0
  661. data/lib/templates/wordpress/wp-content/plugins/akismet/_inc/form.js +30 -0
  662. data/lib/templates/wordpress/wp-content/plugins/akismet/_inc/img/logo-full-2x.png +0 -0
  663. data/lib/templates/wordpress/wp-content/plugins/akismet/akismet.php +59 -0
  664. data/lib/templates/wordpress/wp-content/plugins/akismet/class.akismet-admin.php +885 -0
  665. data/lib/templates/wordpress/wp-content/plugins/akismet/class.akismet-widget.php +110 -0
  666. data/lib/templates/wordpress/wp-content/plugins/akismet/class.akismet.php +1088 -0
  667. data/lib/templates/wordpress/wp-content/plugins/akismet/index.php +2 -0
  668. data/lib/templates/wordpress/wp-content/plugins/akismet/readme.txt +266 -0
  669. data/lib/templates/wordpress/wp-content/plugins/akismet/views/config.php +220 -0
  670. data/lib/templates/wordpress/wp-content/plugins/akismet/views/get.php +5 -0
  671. data/lib/templates/wordpress/wp-content/plugins/akismet/views/notice.php +102 -0
  672. data/lib/templates/wordpress/wp-content/plugins/akismet/views/start.php +95 -0
  673. data/lib/templates/wordpress/wp-content/plugins/akismet/views/stats.php +4 -0
  674. data/lib/templates/wordpress/wp-content/plugins/akismet/views/strict.php +7 -0
  675. data/lib/templates/wordpress/wp-content/plugins/akismet/wrapper.php +213 -0
  676. data/lib/templates/wordpress/wp-content/plugins/index.php +2 -0
  677. data/lib/templates/wordpress/wp-content/themes/index.php +2 -0
  678. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/404.php +30 -0
  679. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/archive.php +64 -0
  680. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/author-bio.php +39 -0
  681. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/comments.php +58 -0
  682. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/content-link.php +60 -0
  683. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/content-none.php +37 -0
  684. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/content-page.php +37 -0
  685. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/content-search.php +37 -0
  686. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/content.php +60 -0
  687. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/css/editor-style.css +493 -0
  688. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/css/ie.css +948 -0
  689. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/css/ie7.css +89 -0
  690. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/footer.php +34 -0
  691. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/functions.php +355 -0
  692. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/COPYING.txt +9 -0
  693. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/Genericons.eot +0 -0
  694. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/Genericons.svg +543 -0
  695. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/Genericons.ttf +0 -0
  696. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/Genericons.woff +0 -0
  697. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/LICENSE.txt +339 -0
  698. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/README.md +152 -0
  699. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/example.html +719 -0
  700. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/genericons/genericons.css +209 -0
  701. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/header.php +50 -0
  702. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/image.php +94 -0
  703. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/inc/back-compat.php +63 -0
  704. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/inc/custom-header.php +356 -0
  705. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/inc/customizer.php +715 -0
  706. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/inc/template-tags.php +242 -0
  707. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/index.php +61 -0
  708. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/color-scheme-control.js +78 -0
  709. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/customize-preview.js +35 -0
  710. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/functions.js +162 -0
  711. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/html5.js +9 -0
  712. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/keyboard-image-navigation.js +22 -0
  713. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/js/skip-link-focus-fix.js +26 -0
  714. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/languages/twentyfifteen.pot +328 -0
  715. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/page.php +38 -0
  716. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/readme.txt +92 -0
  717. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/rtl.css +840 -0
  718. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/screenshot.png +0 -0
  719. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/search.php +53 -0
  720. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/sidebar.php +47 -0
  721. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/single.php +48 -0
  722. data/lib/templates/wordpress/wp-content/themes/twentyfifteen/style.css +5994 -0
  723. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/404.php +32 -0
  724. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/archive.php +74 -0
  725. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/author.php +74 -0
  726. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/category.php +58 -0
  727. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/comments.php +66 -0
  728. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-aside.php +62 -0
  729. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-audio.php +62 -0
  730. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-featured-post.php +34 -0
  731. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-gallery.php +62 -0
  732. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-image.php +62 -0
  733. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-link.php +62 -0
  734. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-none.php +31 -0
  735. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-page.php +31 -0
  736. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-quote.php +62 -0
  737. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content-video.php +62 -0
  738. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/content.php +71 -0
  739. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/css/editor-style.css +737 -0
  740. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/css/ie.css +1335 -0
  741. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/featured-content.php +39 -0
  742. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/footer.php +28 -0
  743. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/functions.php +519 -0
  744. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/COPYING.txt +9 -0
  745. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/Genericons-Regular.otf +0 -0
  746. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/LICENSE.txt +339 -0
  747. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/README.txt +123 -0
  748. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/example.html +464 -0
  749. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.eot +0 -0
  750. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.svg +135 -0
  751. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.ttf +0 -0
  752. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.woff +0 -0
  753. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/genericons/genericons.css +197 -0
  754. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/header.php +65 -0
  755. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/image.php +79 -0
  756. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/images/pattern-dark.svg +16 -0
  757. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/images/pattern-light.svg +6 -0
  758. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/back-compat.php +63 -0
  759. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/custom-header.php +147 -0
  760. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/customizer.php +115 -0
  761. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/featured-content.php +531 -0
  762. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/template-tags.php +227 -0
  763. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/inc/widgets.php +269 -0
  764. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/index.php +61 -0
  765. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/customizer.js +38 -0
  766. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/featured-content-admin.js +9 -0
  767. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/functions.js +170 -0
  768. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/html5.js +8 -0
  769. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/keyboard-image-navigation.js +21 -0
  770. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/js/slider.js +598 -0
  771. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/languages/twentyfourteen.pot +480 -0
  772. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/page-templates/contributors.php +52 -0
  773. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/page-templates/full-width.php +42 -0
  774. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/page.php +48 -0
  775. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/rtl.css +854 -0
  776. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/screenshot.png +0 -0
  777. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/search.php +49 -0
  778. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/sidebar-content.php +16 -0
  779. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/sidebar-footer.php +19 -0
  780. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/sidebar.php +29 -0
  781. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/single.php +40 -0
  782. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/style.css +4321 -0
  783. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/tag.php +60 -0
  784. data/lib/templates/wordpress/wp-content/themes/twentyfourteen/taxonomy-post_format.php +85 -0
  785. data/lib/templates/wordpress/wp-content/themes/twentythirteen/404.php +31 -0
  786. data/lib/templates/wordpress/wp-content/themes/twentythirteen/archive.php +55 -0
  787. data/lib/templates/wordpress/wp-content/themes/twentythirteen/author-bio.php +34 -0
  788. data/lib/templates/wordpress/wp-content/themes/twentythirteen/author.php +62 -0
  789. data/lib/templates/wordpress/wp-content/themes/twentythirteen/category.php +41 -0
  790. data/lib/templates/wordpress/wp-content/themes/twentythirteen/comments.php +59 -0
  791. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-aside.php +38 -0
  792. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-audio.php +44 -0
  793. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-chat.php +38 -0
  794. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-gallery.php +52 -0
  795. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-image.php +48 -0
  796. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-link.php +43 -0
  797. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-none.php +31 -0
  798. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-quote.php +34 -0
  799. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-status.php +32 -0
  800. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content-video.php +48 -0
  801. data/lib/templates/wordpress/wp-content/themes/twentythirteen/content.php +64 -0
  802. data/lib/templates/wordpress/wp-content/themes/twentythirteen/css/editor-style.css +787 -0
  803. data/lib/templates/wordpress/wp-content/themes/twentythirteen/css/ie.css +288 -0
  804. data/lib/templates/wordpress/wp-content/themes/twentythirteen/footer.php +26 -0
  805. data/lib/templates/wordpress/wp-content/themes/twentythirteen/functions.php +552 -0
  806. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/COPYING.txt +9 -0
  807. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/Genericons-Regular.otf +0 -0
  808. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/LICENSE.txt +339 -0
  809. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/README.txt +123 -0
  810. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/example.html +464 -0
  811. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/font/genericons-regular-webfont.eot +0 -0
  812. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/font/genericons-regular-webfont.svg +135 -0
  813. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/font/genericons-regular-webfont.ttf +0 -0
  814. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/font/genericons-regular-webfont.woff +0 -0
  815. data/lib/templates/wordpress/wp-content/themes/twentythirteen/genericons/genericons.css +197 -0
  816. data/lib/templates/wordpress/wp-content/themes/twentythirteen/header.php +51 -0
  817. data/lib/templates/wordpress/wp-content/themes/twentythirteen/image.php +82 -0
  818. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/dotted-line-2x.png +0 -0
  819. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/dotted-line-light-2x.png +0 -0
  820. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/dotted-line-light.png +0 -0
  821. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/dotted-line.png +0 -0
  822. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/circle-thumbnail.png +0 -0
  823. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/circle.png +0 -0
  824. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/diamond-thumbnail.png +0 -0
  825. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/diamond.png +0 -0
  826. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/star-thumbnail.png +0 -0
  827. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/headers/star.png +0 -0
  828. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/search-icon-2x.png +0 -0
  829. data/lib/templates/wordpress/wp-content/themes/twentythirteen/images/search-icon.png +0 -0
  830. data/lib/templates/wordpress/wp-content/themes/twentythirteen/inc/back-compat.php +63 -0
  831. data/lib/templates/wordpress/wp-content/themes/twentythirteen/inc/custom-header.php +230 -0
  832. data/lib/templates/wordpress/wp-content/themes/twentythirteen/index.php +38 -0
  833. data/lib/templates/wordpress/wp-content/themes/twentythirteen/js/functions.js +132 -0
  834. data/lib/templates/wordpress/wp-content/themes/twentythirteen/js/html5.js +8 -0
  835. data/lib/templates/wordpress/wp-content/themes/twentythirteen/js/theme-customizer.js +41 -0
  836. data/lib/templates/wordpress/wp-content/themes/twentythirteen/languages/twentythirteen.pot +336 -0
  837. data/lib/templates/wordpress/wp-content/themes/twentythirteen/page.php +50 -0
  838. data/lib/templates/wordpress/wp-content/themes/twentythirteen/rtl.css +766 -0
  839. data/lib/templates/wordpress/wp-content/themes/twentythirteen/screenshot.png +0 -0
  840. data/lib/templates/wordpress/wp-content/themes/twentythirteen/search.php +36 -0
  841. data/lib/templates/wordpress/wp-content/themes/twentythirteen/sidebar-main.php +18 -0
  842. data/lib/templates/wordpress/wp-content/themes/twentythirteen/sidebar.php +22 -0
  843. data/lib/templates/wordpress/wp-content/themes/twentythirteen/single.php +28 -0
  844. data/lib/templates/wordpress/wp-content/themes/twentythirteen/style.css +3227 -0
  845. data/lib/templates/wordpress/wp-content/themes/twentythirteen/tag.php +43 -0
  846. data/lib/templates/wordpress/wp-content/themes/twentythirteen/taxonomy-post_format.php +41 -0
  847. data/lib/templates/wordpress/wp-cron.php +124 -0
  848. data/lib/templates/wordpress/wp-includes/ID3/getid3.lib.php +1376 -0
  849. data/lib/templates/wordpress/wp-includes/ID3/getid3.php +1796 -0
  850. data/lib/templates/wordpress/wp-includes/ID3/license.commercial.txt +27 -0
  851. data/lib/templates/wordpress/wp-includes/ID3/license.txt +29 -0
  852. data/lib/templates/wordpress/wp-includes/ID3/module.audio-video.asf.php +2013 -0
  853. data/lib/templates/wordpress/wp-includes/ID3/module.audio-video.flv.php +745 -0
  854. data/lib/templates/wordpress/wp-includes/ID3/module.audio-video.matroska.php +1751 -0
  855. data/lib/templates/wordpress/wp-includes/ID3/module.audio-video.quicktime.php +2246 -0
  856. data/lib/templates/wordpress/wp-includes/ID3/module.audio-video.riff.php +2586 -0
  857. data/lib/templates/wordpress/wp-includes/ID3/module.audio.ac3.php +474 -0
  858. data/lib/templates/wordpress/wp-includes/ID3/module.audio.dts.php +291 -0
  859. data/lib/templates/wordpress/wp-includes/ID3/module.audio.flac.php +443 -0
  860. data/lib/templates/wordpress/wp-includes/ID3/module.audio.mp3.php +2012 -0
  861. data/lib/templates/wordpress/wp-includes/ID3/module.audio.ogg.php +756 -0
  862. data/lib/templates/wordpress/wp-includes/ID3/module.tag.apetag.php +371 -0
  863. data/lib/templates/wordpress/wp-includes/ID3/module.tag.id3v1.php +360 -0
  864. data/lib/templates/wordpress/wp-includes/ID3/module.tag.id3v2.php +3424 -0
  865. data/lib/templates/wordpress/wp-includes/ID3/module.tag.lyrics3.php +294 -0
  866. data/lib/templates/wordpress/wp-includes/ID3/readme.txt +604 -0
  867. data/lib/templates/wordpress/wp-includes/SimplePie/Author.php +157 -0
  868. data/lib/templates/wordpress/wp-includes/SimplePie/Cache.php +133 -0
  869. data/lib/templates/wordpress/wp-includes/SimplePie/Cache/Base.php +114 -0
  870. data/lib/templates/wordpress/wp-includes/SimplePie/Cache/DB.php +137 -0
  871. data/lib/templates/wordpress/wp-includes/SimplePie/Cache/File.php +173 -0
  872. data/lib/templates/wordpress/wp-includes/SimplePie/Cache/Memcache.php +183 -0
  873. data/lib/templates/wordpress/wp-includes/SimplePie/Cache/MySQL.php +438 -0
  874. data/lib/templates/wordpress/wp-includes/SimplePie/Caption.php +210 -0
  875. data/lib/templates/wordpress/wp-includes/SimplePie/Category.php +157 -0
  876. data/lib/templates/wordpress/wp-includes/SimplePie/Content/Type/Sniffer.php +332 -0
  877. data/lib/templates/wordpress/wp-includes/SimplePie/Copyright.php +130 -0
  878. data/lib/templates/wordpress/wp-includes/SimplePie/Core.php +57 -0
  879. data/lib/templates/wordpress/wp-includes/SimplePie/Credit.php +156 -0
  880. data/lib/templates/wordpress/wp-includes/SimplePie/Decode/HTML/Entities.php +617 -0
  881. data/lib/templates/wordpress/wp-includes/SimplePie/Enclosure.php +1380 -0
  882. data/lib/templates/wordpress/wp-includes/SimplePie/Exception.php +52 -0
  883. data/lib/templates/wordpress/wp-includes/SimplePie/File.php +292 -0
  884. data/lib/templates/wordpress/wp-includes/SimplePie/HTTP/Parser.php +500 -0
  885. data/lib/templates/wordpress/wp-includes/SimplePie/IRI.php +1238 -0
  886. data/lib/templates/wordpress/wp-includes/SimplePie/Item.php +2964 -0
  887. data/lib/templates/wordpress/wp-includes/SimplePie/Locator.php +372 -0
  888. data/lib/templates/wordpress/wp-includes/SimplePie/Misc.php +2247 -0
  889. data/lib/templates/wordpress/wp-includes/SimplePie/Net/IPv6.php +276 -0
  890. data/lib/templates/wordpress/wp-includes/SimplePie/Parse/Date.php +983 -0
  891. data/lib/templates/wordpress/wp-includes/SimplePie/Parser.php +407 -0
  892. data/lib/templates/wordpress/wp-includes/SimplePie/Rating.php +129 -0
  893. data/lib/templates/wordpress/wp-includes/SimplePie/Registry.php +225 -0
  894. data/lib/templates/wordpress/wp-includes/SimplePie/Restriction.php +155 -0
  895. data/lib/templates/wordpress/wp-includes/SimplePie/Sanitize.php +554 -0
  896. data/lib/templates/wordpress/wp-includes/SimplePie/Source.php +611 -0
  897. data/lib/templates/wordpress/wp-includes/SimplePie/XML/Declaration/Parser.php +362 -0
  898. data/lib/templates/wordpress/wp-includes/SimplePie/gzdecode.php +371 -0
  899. data/lib/templates/wordpress/wp-includes/Text/Diff.php +450 -0
  900. data/lib/templates/wordpress/wp-includes/Text/Diff/Engine/native.php +436 -0
  901. data/lib/templates/wordpress/wp-includes/Text/Diff/Engine/shell.php +162 -0
  902. data/lib/templates/wordpress/wp-includes/Text/Diff/Engine/string.php +248 -0
  903. data/lib/templates/wordpress/wp-includes/Text/Diff/Engine/xdiff.php +64 -0
  904. data/lib/templates/wordpress/wp-includes/Text/Diff/Renderer.php +235 -0
  905. data/lib/templates/wordpress/wp-includes/Text/Diff/Renderer/inline.php +206 -0
  906. data/lib/templates/wordpress/wp-includes/admin-bar.php +959 -0
  907. data/lib/templates/wordpress/wp-includes/atomlib.php +352 -0
  908. data/lib/templates/wordpress/wp-includes/author-template.php +453 -0
  909. data/lib/templates/wordpress/wp-includes/bookmark-template.php +298 -0
  910. data/lib/templates/wordpress/wp-includes/bookmark.php +415 -0
  911. data/lib/templates/wordpress/wp-includes/cache.php +714 -0
  912. data/lib/templates/wordpress/wp-includes/canonical.php +587 -0
  913. data/lib/templates/wordpress/wp-includes/capabilities.php +1575 -0
  914. data/lib/templates/wordpress/wp-includes/category-template.php +1459 -0
  915. data/lib/templates/wordpress/wp-includes/category.php +339 -0
  916. data/lib/templates/wordpress/wp-includes/certificates/ca-bundle.crt +3785 -0
  917. data/lib/templates/wordpress/wp-includes/class-IXR.php +1111 -0
  918. data/lib/templates/wordpress/wp-includes/class-feed.php +141 -0
  919. data/lib/templates/wordpress/wp-includes/class-http.php +2276 -0
  920. data/lib/templates/wordpress/wp-includes/class-json.php +936 -0
  921. data/lib/templates/wordpress/wp-includes/class-oembed.php +615 -0
  922. data/lib/templates/wordpress/wp-includes/class-phpass.php +268 -0
  923. data/lib/templates/wordpress/wp-includes/class-phpmailer.php +3265 -0
  924. data/lib/templates/wordpress/wp-includes/class-pop3.php +652 -0
  925. data/lib/templates/wordpress/wp-includes/class-simplepie.php +3119 -0
  926. data/lib/templates/wordpress/wp-includes/class-smtp.php +943 -0
  927. data/lib/templates/wordpress/wp-includes/class-snoopy.php +1256 -0
  928. data/lib/templates/wordpress/wp-includes/class-wp-admin-bar.php +519 -0
  929. data/lib/templates/wordpress/wp-includes/class-wp-ajax-response.php +145 -0
  930. data/lib/templates/wordpress/wp-includes/class-wp-customize-control.php +1378 -0
  931. data/lib/templates/wordpress/wp-includes/class-wp-customize-manager.php +1591 -0
  932. data/lib/templates/wordpress/wp-includes/class-wp-customize-panel.php +333 -0
  933. data/lib/templates/wordpress/wp-includes/class-wp-customize-section.php +453 -0
  934. data/lib/templates/wordpress/wp-includes/class-wp-customize-setting.php +629 -0
  935. data/lib/templates/wordpress/wp-includes/class-wp-customize-widgets.php +1549 -0
  936. data/lib/templates/wordpress/wp-includes/class-wp-editor.php +1492 -0
  937. data/lib/templates/wordpress/wp-includes/class-wp-embed.php +357 -0
  938. data/lib/templates/wordpress/wp-includes/class-wp-error.php +219 -0
  939. data/lib/templates/wordpress/wp-includes/class-wp-http-ixr-client.php +108 -0
  940. data/lib/templates/wordpress/wp-includes/class-wp-image-editor-gd.php +470 -0
  941. data/lib/templates/wordpress/wp-includes/class-wp-image-editor-imagick.php +516 -0
  942. data/lib/templates/wordpress/wp-includes/class-wp-image-editor.php +485 -0
  943. data/lib/templates/wordpress/wp-includes/class-wp-theme.php +1237 -0
  944. data/lib/templates/wordpress/wp-includes/class-wp-walker.php +416 -0
  945. data/lib/templates/wordpress/wp-includes/class-wp-xmlrpc-server.php +5935 -0
  946. data/lib/templates/wordpress/wp-includes/class-wp.php +714 -0
  947. data/lib/templates/wordpress/wp-includes/class.wp-dependencies.php +509 -0
  948. data/lib/templates/wordpress/wp-includes/class.wp-scripts.php +284 -0
  949. data/lib/templates/wordpress/wp-includes/class.wp-styles.php +248 -0
  950. data/lib/templates/wordpress/wp-includes/comment-template.php +2421 -0
  951. data/lib/templates/wordpress/wp-includes/comment.php +3066 -0
  952. data/lib/templates/wordpress/wp-includes/compat.php +149 -0
  953. data/lib/templates/wordpress/wp-includes/cron.php +470 -0
  954. data/lib/templates/wordpress/wp-includes/css/admin-bar-rtl.css +1123 -0
  955. data/lib/templates/wordpress/wp-includes/css/admin-bar-rtl.min.css +1 -0
  956. data/lib/templates/wordpress/wp-includes/css/admin-bar.css +1123 -0
  957. data/lib/templates/wordpress/wp-includes/css/admin-bar.min.css +1 -0
  958. data/lib/templates/wordpress/wp-includes/css/buttons-rtl.css +360 -0
  959. data/lib/templates/wordpress/wp-includes/css/buttons-rtl.min.css +1 -0
  960. data/lib/templates/wordpress/wp-includes/css/buttons.css +360 -0
  961. data/lib/templates/wordpress/wp-includes/css/buttons.min.css +1 -0
  962. data/lib/templates/wordpress/wp-includes/css/dashicons.css +958 -0
  963. data/lib/templates/wordpress/wp-includes/css/dashicons.min.css +1 -0
  964. data/lib/templates/wordpress/wp-includes/css/editor-rtl.css +2143 -0
  965. data/lib/templates/wordpress/wp-includes/css/editor-rtl.min.css +1 -0
  966. data/lib/templates/wordpress/wp-includes/css/editor.css +2143 -0
  967. data/lib/templates/wordpress/wp-includes/css/editor.min.css +1 -0
  968. data/lib/templates/wordpress/wp-includes/css/jquery-ui-dialog-rtl.css +362 -0
  969. data/lib/templates/wordpress/wp-includes/css/jquery-ui-dialog-rtl.min.css +17 -0
  970. data/lib/templates/wordpress/wp-includes/css/jquery-ui-dialog.css +362 -0
  971. data/lib/templates/wordpress/wp-includes/css/jquery-ui-dialog.min.css +17 -0
  972. data/lib/templates/wordpress/wp-includes/css/media-views-rtl.css +2601 -0
  973. data/lib/templates/wordpress/wp-includes/css/media-views-rtl.min.css +8 -0
  974. data/lib/templates/wordpress/wp-includes/css/media-views.css +2601 -0
  975. data/lib/templates/wordpress/wp-includes/css/media-views.min.css +8 -0
  976. data/lib/templates/wordpress/wp-includes/css/wp-auth-check-rtl.css +109 -0
  977. data/lib/templates/wordpress/wp-includes/css/wp-auth-check-rtl.min.css +1 -0
  978. data/lib/templates/wordpress/wp-includes/css/wp-auth-check.css +109 -0
  979. data/lib/templates/wordpress/wp-includes/css/wp-auth-check.min.css +1 -0
  980. data/lib/templates/wordpress/wp-includes/css/wp-pointer-rtl.css +212 -0
  981. data/lib/templates/wordpress/wp-includes/css/wp-pointer-rtl.min.css +1 -0
  982. data/lib/templates/wordpress/wp-includes/css/wp-pointer.css +212 -0
  983. data/lib/templates/wordpress/wp-includes/css/wp-pointer.min.css +1 -0
  984. data/lib/templates/wordpress/wp-includes/date.php +1013 -0
  985. data/lib/templates/wordpress/wp-includes/default-constants.php +323 -0
  986. data/lib/templates/wordpress/wp-includes/default-filters.php +392 -0
  987. data/lib/templates/wordpress/wp-includes/default-widgets.php +1479 -0
  988. data/lib/templates/wordpress/wp-includes/deprecated.php +3493 -0
  989. data/lib/templates/wordpress/wp-includes/feed-atom-comments.php +115 -0
  990. data/lib/templates/wordpress/wp-includes/feed-atom.php +87 -0
  991. data/lib/templates/wordpress/wp-includes/feed-rdf.php +85 -0
  992. data/lib/templates/wordpress/wp-includes/feed-rss.php +46 -0
  993. data/lib/templates/wordpress/wp-includes/feed-rss2-comments.php +101 -0
  994. data/lib/templates/wordpress/wp-includes/feed-rss2.php +117 -0
  995. data/lib/templates/wordpress/wp-includes/feed.php +651 -0
  996. data/lib/templates/wordpress/wp-includes/fonts/dashicons.eot +0 -0
  997. data/lib/templates/wordpress/wp-includes/fonts/dashicons.svg +253 -0
  998. data/lib/templates/wordpress/wp-includes/fonts/dashicons.ttf +0 -0
  999. data/lib/templates/wordpress/wp-includes/fonts/dashicons.woff +0 -0
  1000. data/lib/templates/wordpress/wp-includes/formatting.php +4377 -0
  1001. data/lib/templates/wordpress/wp-includes/functions.php +4847 -0
  1002. data/lib/templates/wordpress/wp-includes/functions.wp-scripts.php +296 -0
  1003. data/lib/templates/wordpress/wp-includes/functions.wp-styles.php +222 -0
  1004. data/lib/templates/wordpress/wp-includes/general-template.php +3159 -0
  1005. data/lib/templates/wordpress/wp-includes/http.php +552 -0
  1006. data/lib/templates/wordpress/wp-includes/images/admin-bar-sprite-2x.png +0 -0
  1007. data/lib/templates/wordpress/wp-includes/images/admin-bar-sprite.png +0 -0
  1008. data/lib/templates/wordpress/wp-includes/images/arrow-pointer-blue-2x.png +0 -0
  1009. data/lib/templates/wordpress/wp-includes/images/arrow-pointer-blue.png +0 -0
  1010. data/lib/templates/wordpress/wp-includes/images/blank.gif +0 -0
  1011. data/lib/templates/wordpress/wp-includes/images/crystal/archive.png +0 -0
  1012. data/lib/templates/wordpress/wp-includes/images/crystal/audio.png +0 -0
  1013. data/lib/templates/wordpress/wp-includes/images/crystal/code.png +0 -0
  1014. data/lib/templates/wordpress/wp-includes/images/crystal/default.png +0 -0
  1015. data/lib/templates/wordpress/wp-includes/images/crystal/document.png +0 -0
  1016. data/lib/templates/wordpress/wp-includes/images/crystal/interactive.png +0 -0
  1017. data/lib/templates/wordpress/wp-includes/images/crystal/license.txt +9 -0
  1018. data/lib/templates/wordpress/wp-includes/images/crystal/spreadsheet.png +0 -0
  1019. data/lib/templates/wordpress/wp-includes/images/crystal/text.png +0 -0
  1020. data/lib/templates/wordpress/wp-includes/images/crystal/video.png +0 -0
  1021. data/lib/templates/wordpress/wp-includes/images/down_arrow-2x.gif +0 -0
  1022. data/lib/templates/wordpress/wp-includes/images/down_arrow.gif +0 -0
  1023. data/lib/templates/wordpress/wp-includes/images/icon-pointer-flag-2x.png +0 -0
  1024. data/lib/templates/wordpress/wp-includes/images/icon-pointer-flag.png +0 -0
  1025. data/lib/templates/wordpress/wp-includes/images/media/archive.png +0 -0
  1026. data/lib/templates/wordpress/wp-includes/images/media/audio.png +0 -0
  1027. data/lib/templates/wordpress/wp-includes/images/media/code.png +0 -0
  1028. data/lib/templates/wordpress/wp-includes/images/media/default.png +0 -0
  1029. data/lib/templates/wordpress/wp-includes/images/media/document.png +0 -0
  1030. data/lib/templates/wordpress/wp-includes/images/media/interactive.png +0 -0
  1031. data/lib/templates/wordpress/wp-includes/images/media/spreadsheet.png +0 -0
  1032. data/lib/templates/wordpress/wp-includes/images/media/text.png +0 -0
  1033. data/lib/templates/wordpress/wp-includes/images/media/video.png +0 -0
  1034. data/lib/templates/wordpress/wp-includes/images/rss-2x.png +0 -0
  1035. data/lib/templates/wordpress/wp-includes/images/rss.png +0 -0
  1036. data/lib/templates/wordpress/wp-includes/images/smilies/frownie.png +0 -0
  1037. data/lib/templates/wordpress/wp-includes/images/smilies/icon_arrow.gif +0 -0
  1038. data/lib/templates/wordpress/wp-includes/images/smilies/icon_biggrin.gif +0 -0
  1039. data/lib/templates/wordpress/wp-includes/images/smilies/icon_confused.gif +0 -0
  1040. data/lib/templates/wordpress/wp-includes/images/smilies/icon_cool.gif +0 -0
  1041. data/lib/templates/wordpress/wp-includes/images/smilies/icon_cry.gif +0 -0
  1042. data/lib/templates/wordpress/wp-includes/images/smilies/icon_eek.gif +0 -0
  1043. data/lib/templates/wordpress/wp-includes/images/smilies/icon_evil.gif +0 -0
  1044. data/lib/templates/wordpress/wp-includes/images/smilies/icon_exclaim.gif +0 -0
  1045. data/lib/templates/wordpress/wp-includes/images/smilies/icon_idea.gif +0 -0
  1046. data/lib/templates/wordpress/wp-includes/images/smilies/icon_lol.gif +0 -0
  1047. data/lib/templates/wordpress/wp-includes/images/smilies/icon_mad.gif +0 -0
  1048. data/lib/templates/wordpress/wp-includes/images/smilies/icon_mrgreen.gif +0 -0
  1049. data/lib/templates/wordpress/wp-includes/images/smilies/icon_neutral.gif +0 -0
  1050. data/lib/templates/wordpress/wp-includes/images/smilies/icon_question.gif +0 -0
  1051. data/lib/templates/wordpress/wp-includes/images/smilies/icon_razz.gif +0 -0
  1052. data/lib/templates/wordpress/wp-includes/images/smilies/icon_redface.gif +0 -0
  1053. data/lib/templates/wordpress/wp-includes/images/smilies/icon_rolleyes.gif +0 -0
  1054. data/lib/templates/wordpress/wp-includes/images/smilies/icon_sad.gif +0 -0
  1055. data/lib/templates/wordpress/wp-includes/images/smilies/icon_smile.gif +0 -0
  1056. data/lib/templates/wordpress/wp-includes/images/smilies/icon_surprised.gif +0 -0
  1057. data/lib/templates/wordpress/wp-includes/images/smilies/icon_twisted.gif +0 -0
  1058. data/lib/templates/wordpress/wp-includes/images/smilies/icon_wink.gif +0 -0
  1059. data/lib/templates/wordpress/wp-includes/images/smilies/mrgreen.png +0 -0
  1060. data/lib/templates/wordpress/wp-includes/images/smilies/rolleyes.png +0 -0
  1061. data/lib/templates/wordpress/wp-includes/images/smilies/simple-smile.png +0 -0
  1062. data/lib/templates/wordpress/wp-includes/images/spinner-2x.gif +0 -0
  1063. data/lib/templates/wordpress/wp-includes/images/spinner.gif +0 -0
  1064. data/lib/templates/wordpress/wp-includes/images/toggle-arrow-2x.png +0 -0
  1065. data/lib/templates/wordpress/wp-includes/images/toggle-arrow.png +0 -0
  1066. data/lib/templates/wordpress/wp-includes/images/uploader-icons-2x.png +0 -0
  1067. data/lib/templates/wordpress/wp-includes/images/uploader-icons.png +0 -0
  1068. data/lib/templates/wordpress/wp-includes/images/wlw/wp-comments.png +0 -0
  1069. data/lib/templates/wordpress/wp-includes/images/wlw/wp-icon.png +0 -0
  1070. data/lib/templates/wordpress/wp-includes/images/wlw/wp-watermark.png +0 -0
  1071. data/lib/templates/wordpress/wp-includes/images/wpicons-2x.png +0 -0
  1072. data/lib/templates/wordpress/wp-includes/images/wpicons.png +0 -0
  1073. data/lib/templates/wordpress/wp-includes/images/wpspin-2x.gif +0 -0
  1074. data/lib/templates/wordpress/wp-includes/images/wpspin.gif +0 -0
  1075. data/lib/templates/wordpress/wp-includes/images/xit-2x.gif +0 -0
  1076. data/lib/templates/wordpress/wp-includes/images/xit.gif +0 -0
  1077. data/lib/templates/wordpress/wp-includes/js/admin-bar.js +379 -0
  1078. data/lib/templates/wordpress/wp-includes/js/admin-bar.min.js +1 -0
  1079. data/lib/templates/wordpress/wp-includes/js/autosave.js +591 -0
  1080. data/lib/templates/wordpress/wp-includes/js/autosave.min.js +1 -0
  1081. data/lib/templates/wordpress/wp-includes/js/backbone.min.js +1 -0
  1082. data/lib/templates/wordpress/wp-includes/js/colorpicker.js +707 -0
  1083. data/lib/templates/wordpress/wp-includes/js/colorpicker.min.js +1 -0
  1084. data/lib/templates/wordpress/wp-includes/js/comment-reply.js +47 -0
  1085. data/lib/templates/wordpress/wp-includes/js/comment-reply.min.js +1 -0
  1086. data/lib/templates/wordpress/wp-includes/js/crop/cropper.css +165 -0
  1087. data/lib/templates/wordpress/wp-includes/js/crop/cropper.js +516 -0
  1088. data/lib/templates/wordpress/wp-includes/js/crop/marqueeHoriz.gif +0 -0
  1089. data/lib/templates/wordpress/wp-includes/js/crop/marqueeVert.gif +0 -0
  1090. data/lib/templates/wordpress/wp-includes/js/customize-base.js +647 -0
  1091. data/lib/templates/wordpress/wp-includes/js/customize-base.min.js +1 -0
  1092. data/lib/templates/wordpress/wp-includes/js/customize-loader.js +259 -0
  1093. data/lib/templates/wordpress/wp-includes/js/customize-loader.min.js +1 -0
  1094. data/lib/templates/wordpress/wp-includes/js/customize-models.js +247 -0
  1095. data/lib/templates/wordpress/wp-includes/js/customize-models.min.js +1 -0
  1096. data/lib/templates/wordpress/wp-includes/js/customize-preview-widgets.js +129 -0
  1097. data/lib/templates/wordpress/wp-includes/js/customize-preview-widgets.min.js +1 -0
  1098. data/lib/templates/wordpress/wp-includes/js/customize-preview.js +171 -0
  1099. data/lib/templates/wordpress/wp-includes/js/customize-preview.min.js +1 -0
  1100. data/lib/templates/wordpress/wp-includes/js/customize-views.js +231 -0
  1101. data/lib/templates/wordpress/wp-includes/js/customize-views.min.js +1 -0
  1102. data/lib/templates/wordpress/wp-includes/js/heartbeat.js +750 -0
  1103. data/lib/templates/wordpress/wp-includes/js/heartbeat.min.js +1 -0
  1104. data/lib/templates/wordpress/wp-includes/js/hoverIntent.js +115 -0
  1105. data/lib/templates/wordpress/wp-includes/js/hoverIntent.min.js +1 -0
  1106. data/lib/templates/wordpress/wp-includes/js/imgareaselect/border-anim-h.gif +0 -0
  1107. data/lib/templates/wordpress/wp-includes/js/imgareaselect/border-anim-v.gif +0 -0
  1108. data/lib/templates/wordpress/wp-includes/js/imgareaselect/imgareaselect.css +41 -0
  1109. data/lib/templates/wordpress/wp-includes/js/imgareaselect/jquery.imgareaselect.js +1205 -0
  1110. data/lib/templates/wordpress/wp-includes/js/imgareaselect/jquery.imgareaselect.min.js +1 -0
  1111. data/lib/templates/wordpress/wp-includes/js/jcrop/Jcrop.gif +0 -0
  1112. data/lib/templates/wordpress/wp-includes/js/jcrop/jquery.Jcrop.min.css +29 -0
  1113. data/lib/templates/wordpress/wp-includes/js/jcrop/jquery.Jcrop.min.js +22 -0
  1114. data/lib/templates/wordpress/wp-includes/js/jquery/jquery-migrate.js +521 -0
  1115. data/lib/templates/wordpress/wp-includes/js/jquery/jquery-migrate.min.js +2 -0
  1116. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.color.min.js +2 -0
  1117. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.form.js +1193 -0
  1118. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.form.min.js +11 -0
  1119. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.hotkeys.js +134 -0
  1120. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.hotkeys.min.js +1 -0
  1121. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.js +5 -0
  1122. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.masonry.min.js +11 -0
  1123. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.query.js +11 -0
  1124. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.schedule.js +36 -0
  1125. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.serialize-object.js +31 -0
  1126. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.table-hotkeys.js +99 -0
  1127. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.table-hotkeys.min.js +1 -0
  1128. data/lib/templates/wordpress/wp-includes/js/jquery/jquery.ui.touch-punch.js +11 -0
  1129. data/lib/templates/wordpress/wp-includes/js/jquery/suggest.js +316 -0
  1130. data/lib/templates/wordpress/wp-includes/js/jquery/suggest.min.js +1 -0
  1131. data/lib/templates/wordpress/wp-includes/js/jquery/ui/accordion.min.js +11 -0
  1132. data/lib/templates/wordpress/wp-includes/js/jquery/ui/autocomplete.min.js +11 -0
  1133. data/lib/templates/wordpress/wp-includes/js/jquery/ui/button.min.js +11 -0
  1134. data/lib/templates/wordpress/wp-includes/js/jquery/ui/core.min.js +11 -0
  1135. data/lib/templates/wordpress/wp-includes/js/jquery/ui/datepicker.min.js +12 -0
  1136. data/lib/templates/wordpress/wp-includes/js/jquery/ui/dialog.min.js +11 -0
  1137. data/lib/templates/wordpress/wp-includes/js/jquery/ui/draggable.min.js +11 -0
  1138. data/lib/templates/wordpress/wp-includes/js/jquery/ui/droppable.min.js +11 -0
  1139. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-blind.min.js +11 -0
  1140. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-bounce.min.js +11 -0
  1141. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-clip.min.js +11 -0
  1142. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-drop.min.js +11 -0
  1143. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-explode.min.js +11 -0
  1144. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-fade.min.js +11 -0
  1145. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-fold.min.js +11 -0
  1146. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-highlight.min.js +11 -0
  1147. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-puff.min.js +11 -0
  1148. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-pulsate.min.js +11 -0
  1149. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-scale.min.js +11 -0
  1150. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-shake.min.js +11 -0
  1151. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-size.min.js +11 -0
  1152. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-slide.min.js +11 -0
  1153. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect-transfer.min.js +11 -0
  1154. data/lib/templates/wordpress/wp-includes/js/jquery/ui/effect.min.js +21 -0
  1155. data/lib/templates/wordpress/wp-includes/js/jquery/ui/menu.min.js +11 -0
  1156. data/lib/templates/wordpress/wp-includes/js/jquery/ui/mouse.min.js +11 -0
  1157. data/lib/templates/wordpress/wp-includes/js/jquery/ui/position.min.js +11 -0
  1158. data/lib/templates/wordpress/wp-includes/js/jquery/ui/progressbar.min.js +11 -0
  1159. data/lib/templates/wordpress/wp-includes/js/jquery/ui/resizable.min.js +11 -0
  1160. data/lib/templates/wordpress/wp-includes/js/jquery/ui/selectable.min.js +11 -0
  1161. data/lib/templates/wordpress/wp-includes/js/jquery/ui/selectmenu.min.js +11 -0
  1162. data/lib/templates/wordpress/wp-includes/js/jquery/ui/slider.min.js +11 -0
  1163. data/lib/templates/wordpress/wp-includes/js/jquery/ui/sortable.min.js +11 -0
  1164. data/lib/templates/wordpress/wp-includes/js/jquery/ui/spinner.min.js +11 -0
  1165. data/lib/templates/wordpress/wp-includes/js/jquery/ui/tabs.min.js +11 -0
  1166. data/lib/templates/wordpress/wp-includes/js/jquery/ui/tooltip.min.js +11 -0
  1167. data/lib/templates/wordpress/wp-includes/js/jquery/ui/widget.min.js +11 -0
  1168. data/lib/templates/wordpress/wp-includes/js/json2.js +480 -0
  1169. data/lib/templates/wordpress/wp-includes/js/json2.min.js +1 -0
  1170. data/lib/templates/wordpress/wp-includes/js/masonry.min.js +17 -0
  1171. data/lib/templates/wordpress/wp-includes/js/mce-view.js +881 -0
  1172. data/lib/templates/wordpress/wp-includes/js/mce-view.min.js +1 -0
  1173. data/lib/templates/wordpress/wp-includes/js/media-audiovideo.js +934 -0
  1174. data/lib/templates/wordpress/wp-includes/js/media-audiovideo.min.js +1 -0
  1175. data/lib/templates/wordpress/wp-includes/js/media-editor.js +1114 -0
  1176. data/lib/templates/wordpress/wp-includes/js/media-editor.min.js +1 -0
  1177. data/lib/templates/wordpress/wp-includes/js/media-grid.js +863 -0
  1178. data/lib/templates/wordpress/wp-includes/js/media-grid.min.js +1 -0
  1179. data/lib/templates/wordpress/wp-includes/js/media-models.js +1503 -0
  1180. data/lib/templates/wordpress/wp-includes/js/media-models.min.js +1 -0
  1181. data/lib/templates/wordpress/wp-includes/js/media-views.js +8421 -0
  1182. data/lib/templates/wordpress/wp-includes/js/media-views.min.js +4 -0
  1183. data/lib/templates/wordpress/wp-includes/js/mediaelement/background.png +0 -0
  1184. data/lib/templates/wordpress/wp-includes/js/mediaelement/bigplay.png +0 -0
  1185. data/lib/templates/wordpress/wp-includes/js/mediaelement/bigplay.svg +1 -0
  1186. data/lib/templates/wordpress/wp-includes/js/mediaelement/controls.png +0 -0
  1187. data/lib/templates/wordpress/wp-includes/js/mediaelement/controls.svg +1 -0
  1188. data/lib/templates/wordpress/wp-includes/js/mediaelement/flashmediaelement.swf +0 -0
  1189. data/lib/templates/wordpress/wp-includes/js/mediaelement/froogaloop.min.js +4 -0
  1190. data/lib/templates/wordpress/wp-includes/js/mediaelement/loading.gif +0 -0
  1191. data/lib/templates/wordpress/wp-includes/js/mediaelement/mediaelement-and-player.min.js +28 -0
  1192. data/lib/templates/wordpress/wp-includes/js/mediaelement/mediaelementplayer.min.css +1 -0
  1193. data/lib/templates/wordpress/wp-includes/js/mediaelement/silverlightmediaelement.xap +0 -0
  1194. data/lib/templates/wordpress/wp-includes/js/mediaelement/skipback.png +0 -0
  1195. data/lib/templates/wordpress/wp-includes/js/mediaelement/wp-mediaelement.css +308 -0
  1196. data/lib/templates/wordpress/wp-includes/js/mediaelement/wp-mediaelement.js +34 -0
  1197. data/lib/templates/wordpress/wp-includes/js/mediaelement/wp-playlist.js +175 -0
  1198. data/lib/templates/wordpress/wp-includes/js/plupload/handlers.js +488 -0
  1199. data/lib/templates/wordpress/wp-includes/js/plupload/handlers.min.js +1 -0
  1200. data/lib/templates/wordpress/wp-includes/js/plupload/license.txt +339 -0
  1201. data/lib/templates/wordpress/wp-includes/js/plupload/plupload.flash.swf +0 -0
  1202. data/lib/templates/wordpress/wp-includes/js/plupload/plupload.full.min.js +28 -0
  1203. data/lib/templates/wordpress/wp-includes/js/plupload/plupload.silverlight.xap +0 -0
  1204. data/lib/templates/wordpress/wp-includes/js/plupload/wp-plupload.js +424 -0
  1205. data/lib/templates/wordpress/wp-includes/js/plupload/wp-plupload.min.js +1 -0
  1206. data/lib/templates/wordpress/wp-includes/js/quicktags.js +683 -0
  1207. data/lib/templates/wordpress/wp-includes/js/quicktags.min.js +1 -0
  1208. data/lib/templates/wordpress/wp-includes/js/shortcode.js +356 -0
  1209. data/lib/templates/wordpress/wp-includes/js/shortcode.min.js +1 -0
  1210. data/lib/templates/wordpress/wp-includes/js/swfobject.js +4 -0
  1211. data/lib/templates/wordpress/wp-includes/js/swfupload/handlers.js +376 -0
  1212. data/lib/templates/wordpress/wp-includes/js/swfupload/handlers.min.js +1 -0
  1213. data/lib/templates/wordpress/wp-includes/js/swfupload/license.txt +32 -0
  1214. data/lib/templates/wordpress/wp-includes/js/swfupload/plugins/swfupload.cookies.js +53 -0
  1215. data/lib/templates/wordpress/wp-includes/js/swfupload/plugins/swfupload.queue.js +98 -0
  1216. data/lib/templates/wordpress/wp-includes/js/swfupload/plugins/swfupload.speed.js +342 -0
  1217. data/lib/templates/wordpress/wp-includes/js/swfupload/plugins/swfupload.swfobject.js +105 -0
  1218. data/lib/templates/wordpress/wp-includes/js/swfupload/swfupload.js +980 -0
  1219. data/lib/templates/wordpress/wp-includes/js/swfupload/swfupload.swf +0 -0
  1220. data/lib/templates/wordpress/wp-includes/js/thickbox/loadingAnimation.gif +0 -0
  1221. data/lib/templates/wordpress/wp-includes/js/thickbox/macFFBgHack.png +0 -0
  1222. data/lib/templates/wordpress/wp-includes/js/thickbox/thickbox.css +138 -0
  1223. data/lib/templates/wordpress/wp-includes/js/thickbox/thickbox.js +314 -0
  1224. data/lib/templates/wordpress/wp-includes/js/tinymce/langs/wp-langs-en.js +519 -0
  1225. data/lib/templates/wordpress/wp-includes/js/tinymce/license.txt +504 -0
  1226. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/charmap/plugin.js +396 -0
  1227. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/charmap/plugin.min.js +1 -0
  1228. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/colorpicker/plugin.js +112 -0
  1229. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/colorpicker/plugin.min.js +1 -0
  1230. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/compat3x/css/dialog.css +212 -0
  1231. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/compat3x/plugin.js +304 -0
  1232. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/compat3x/plugin.min.js +1 -0
  1233. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/directionality/plugin.js +64 -0
  1234. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/directionality/plugin.min.js +1 -0
  1235. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/fullscreen/plugin.js +136 -0
  1236. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/fullscreen/plugin.min.js +1 -0
  1237. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/hr/plugin.js +30 -0
  1238. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/hr/plugin.min.js +1 -0
  1239. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/image/plugin.js +568 -0
  1240. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/image/plugin.min.js +1 -0
  1241. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/lists/plugin.js +813 -0
  1242. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/lists/plugin.min.js +1 -0
  1243. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/media/moxieplayer.swf +0 -0
  1244. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/media/plugin.js +782 -0
  1245. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/media/plugin.min.js +1 -0
  1246. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/paste/plugin.js +1606 -0
  1247. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/paste/plugin.min.js +1 -0
  1248. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/tabfocus/plugin.js +120 -0
  1249. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/tabfocus/plugin.min.js +1 -0
  1250. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/textcolor/plugin.js +282 -0
  1251. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/textcolor/plugin.min.js +1 -0
  1252. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wordpress/plugin.js +754 -0
  1253. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wordpress/plugin.min.js +1 -0
  1254. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpautoresize/plugin.js +207 -0
  1255. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpautoresize/plugin.min.js +1 -0
  1256. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpdialogs/plugin.js +92 -0
  1257. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpdialogs/plugin.min.js +1 -0
  1258. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js +976 -0
  1259. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js +1 -0
  1260. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpemoji/plugin.js +128 -0
  1261. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpemoji/plugin.min.js +1 -0
  1262. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.js +76 -0
  1263. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.min.js +1 -0
  1264. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpgallery/plugin.js +112 -0
  1265. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpgallery/plugin.min.js +1 -0
  1266. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wplink/plugin.js +50 -0
  1267. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wplink/plugin.min.js +1 -0
  1268. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpview/plugin.js +738 -0
  1269. data/lib/templates/wordpress/wp-includes/js/tinymce/plugins/wpview/plugin.min.js +1 -0
  1270. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/content.inline.min.css +1 -0
  1271. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/content.min.css +1 -0
  1272. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/readme.md +1 -0
  1273. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
  1274. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.svg +62 -0
  1275. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
  1276. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
  1277. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
  1278. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.svg +63 -0
  1279. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
  1280. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
  1281. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/img/anchor.gif +0 -0
  1282. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/img/loader.gif +0 -0
  1283. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/img/object.gif +0 -0
  1284. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/img/trans.gif +0 -0
  1285. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/skin.ie7.min.css +1 -0
  1286. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/lightgray/skin.min.css +1 -0
  1287. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/audio.png +0 -0
  1288. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/dashicon-edit.png +0 -0
  1289. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/dashicon-no.png +0 -0
  1290. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/embedded.png +0 -0
  1291. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/gallery-2x.png +0 -0
  1292. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/gallery.png +0 -0
  1293. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/more-2x.png +0 -0
  1294. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/more.png +0 -0
  1295. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/pagebreak-2x.png +0 -0
  1296. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/pagebreak.png +0 -0
  1297. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/playlist-audio.png +0 -0
  1298. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/playlist-video.png +0 -0
  1299. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/images/video.png +0 -0
  1300. data/lib/templates/wordpress/wp-includes/js/tinymce/skins/wordpress/wp-content.css +539 -0
  1301. data/lib/templates/wordpress/wp-includes/js/tinymce/themes/modern/theme.js +617 -0
  1302. data/lib/templates/wordpress/wp-includes/js/tinymce/themes/modern/theme.min.js +1 -0
  1303. data/lib/templates/wordpress/wp-includes/js/tinymce/tiny_mce_popup.js +542 -0
  1304. data/lib/templates/wordpress/wp-includes/js/tinymce/tinymce.min.js +14 -0
  1305. data/lib/templates/wordpress/wp-includes/js/tinymce/utils/editable_selects.js +70 -0
  1306. data/lib/templates/wordpress/wp-includes/js/tinymce/utils/form_utils.js +210 -0
  1307. data/lib/templates/wordpress/wp-includes/js/tinymce/utils/mctabs.js +164 -0
  1308. data/lib/templates/wordpress/wp-includes/js/tinymce/utils/validate.js +252 -0
  1309. data/lib/templates/wordpress/wp-includes/js/tinymce/wp-mce-help.php +142 -0
  1310. data/lib/templates/wordpress/wp-includes/js/tinymce/wp-tinymce.js.gz +0 -0
  1311. data/lib/templates/wordpress/wp-includes/js/tinymce/wp-tinymce.php +39 -0
  1312. data/lib/templates/wordpress/wp-includes/js/tw-sack.js +193 -0
  1313. data/lib/templates/wordpress/wp-includes/js/tw-sack.min.js +1 -0
  1314. data/lib/templates/wordpress/wp-includes/js/twemoji.js +542 -0
  1315. data/lib/templates/wordpress/wp-includes/js/twemoji.min.js +1 -0
  1316. data/lib/templates/wordpress/wp-includes/js/underscore.min.js +5 -0
  1317. data/lib/templates/wordpress/wp-includes/js/utils.js +197 -0
  1318. data/lib/templates/wordpress/wp-includes/js/utils.min.js +1 -0
  1319. data/lib/templates/wordpress/wp-includes/js/wp-a11y.js +46 -0
  1320. data/lib/templates/wordpress/wp-includes/js/wp-a11y.min.js +1 -0
  1321. data/lib/templates/wordpress/wp-includes/js/wp-ajax-response.js +64 -0
  1322. data/lib/templates/wordpress/wp-includes/js/wp-ajax-response.min.js +1 -0
  1323. data/lib/templates/wordpress/wp-includes/js/wp-auth-check.js +114 -0
  1324. data/lib/templates/wordpress/wp-includes/js/wp-auth-check.min.js +1 -0
  1325. data/lib/templates/wordpress/wp-includes/js/wp-backbone.js +386 -0
  1326. data/lib/templates/wordpress/wp-includes/js/wp-backbone.min.js +1 -0
  1327. data/lib/templates/wordpress/wp-includes/js/wp-emoji-loader.js +76 -0
  1328. data/lib/templates/wordpress/wp-includes/js/wp-emoji-loader.min.js +1 -0
  1329. data/lib/templates/wordpress/wp-includes/js/wp-emoji-release.min.js +4 -0
  1330. data/lib/templates/wordpress/wp-includes/js/wp-emoji.js +170 -0
  1331. data/lib/templates/wordpress/wp-includes/js/wp-emoji.min.js +1 -0
  1332. data/lib/templates/wordpress/wp-includes/js/wp-list-revisions.js +24 -0
  1333. data/lib/templates/wordpress/wp-includes/js/wp-list-revisions.min.js +1 -0
  1334. data/lib/templates/wordpress/wp-includes/js/wp-lists.js +469 -0
  1335. data/lib/templates/wordpress/wp-includes/js/wp-lists.min.js +1 -0
  1336. data/lib/templates/wordpress/wp-includes/js/wp-pointer.js +282 -0
  1337. data/lib/templates/wordpress/wp-includes/js/wp-pointer.min.js +1 -0
  1338. data/lib/templates/wordpress/wp-includes/js/wp-util.js +112 -0
  1339. data/lib/templates/wordpress/wp-includes/js/wp-util.min.js +1 -0
  1340. data/lib/templates/wordpress/wp-includes/js/wpdialog.js +19 -0
  1341. data/lib/templates/wordpress/wp-includes/js/wpdialog.min.js +1 -0
  1342. data/lib/templates/wordpress/wp-includes/js/wplink.js +707 -0
  1343. data/lib/templates/wordpress/wp-includes/js/wplink.min.js +1 -0
  1344. data/lib/templates/wordpress/wp-includes/js/zxcvbn-async.js +18 -0
  1345. data/lib/templates/wordpress/wp-includes/js/zxcvbn-async.min.js +1 -0
  1346. data/lib/templates/wordpress/wp-includes/js/zxcvbn.min.js +47 -0
  1347. data/lib/templates/wordpress/wp-includes/kses.php +1543 -0
  1348. data/lib/templates/wordpress/wp-includes/l10n.php +956 -0
  1349. data/lib/templates/wordpress/wp-includes/link-template.php +3631 -0
  1350. data/lib/templates/wordpress/wp-includes/load.php +828 -0
  1351. data/lib/templates/wordpress/wp-includes/locale.php +365 -0
  1352. data/lib/templates/wordpress/wp-includes/media-template.php +1250 -0
  1353. data/lib/templates/wordpress/wp-includes/media.php +3440 -0
  1354. data/lib/templates/wordpress/wp-includes/meta.php +1667 -0
  1355. data/lib/templates/wordpress/wp-includes/ms-blogs.php +946 -0
  1356. data/lib/templates/wordpress/wp-includes/ms-default-constants.php +153 -0
  1357. data/lib/templates/wordpress/wp-includes/ms-default-filters.php +87 -0
  1358. data/lib/templates/wordpress/wp-includes/ms-deprecated.php +349 -0
  1359. data/lib/templates/wordpress/wp-includes/ms-files.php +82 -0
  1360. data/lib/templates/wordpress/wp-includes/ms-functions.php +2433 -0
  1361. data/lib/templates/wordpress/wp-includes/ms-load.php +472 -0
  1362. data/lib/templates/wordpress/wp-includes/ms-settings.php +213 -0
  1363. data/lib/templates/wordpress/wp-includes/nav-menu-template.php +675 -0
  1364. data/lib/templates/wordpress/wp-includes/nav-menu.php +900 -0
  1365. data/lib/templates/wordpress/wp-includes/option.php +1462 -0
  1366. data/lib/templates/wordpress/wp-includes/pluggable-deprecated.php +192 -0
  1367. data/lib/templates/wordpress/wp-includes/pluggable.php +2347 -0
  1368. data/lib/templates/wordpress/wp-includes/plugin.php +907 -0
  1369. data/lib/templates/wordpress/wp-includes/pomo/entry.php +78 -0
  1370. data/lib/templates/wordpress/wp-includes/pomo/mo.php +265 -0
  1371. data/lib/templates/wordpress/wp-includes/pomo/po.php +408 -0
  1372. data/lib/templates/wordpress/wp-includes/pomo/streams.php +241 -0
  1373. data/lib/templates/wordpress/wp-includes/pomo/translations.php +324 -0
  1374. data/lib/templates/wordpress/wp-includes/post-formats.php +232 -0
  1375. data/lib/templates/wordpress/wp-includes/post-template.php +1831 -0
  1376. data/lib/templates/wordpress/wp-includes/post-thumbnail-template.php +160 -0
  1377. data/lib/templates/wordpress/wp-includes/post.php +5937 -0
  1378. data/lib/templates/wordpress/wp-includes/query.php +4725 -0
  1379. data/lib/templates/wordpress/wp-includes/registration-functions.php +7 -0
  1380. data/lib/templates/wordpress/wp-includes/registration.php +7 -0
  1381. data/lib/templates/wordpress/wp-includes/revision.php +657 -0
  1382. data/lib/templates/wordpress/wp-includes/rewrite.php +2195 -0
  1383. data/lib/templates/wordpress/wp-includes/rss-functions.php +9 -0
  1384. data/lib/templates/wordpress/wp-includes/rss.php +936 -0
  1385. data/lib/templates/wordpress/wp-includes/script-loader.php +1090 -0
  1386. data/lib/templates/wordpress/wp-includes/session.php +439 -0
  1387. data/lib/templates/wordpress/wp-includes/shortcodes.php +404 -0
  1388. data/lib/templates/wordpress/wp-includes/taxonomy.php +4726 -0
  1389. data/lib/templates/wordpress/wp-includes/template-loader.php +76 -0
  1390. data/lib/templates/wordpress/wp-includes/template.php +505 -0
  1391. data/lib/templates/wordpress/wp-includes/theme-compat/comments-popup.php +131 -0
  1392. data/lib/templates/wordpress/wp-includes/theme-compat/comments.php +114 -0
  1393. data/lib/templates/wordpress/wp-includes/theme-compat/footer.php +30 -0
  1394. data/lib/templates/wordpress/wp-includes/theme-compat/header.php +49 -0
  1395. data/lib/templates/wordpress/wp-includes/theme-compat/sidebar.php +83 -0
  1396. data/lib/templates/wordpress/wp-includes/theme.php +2048 -0
  1397. data/lib/templates/wordpress/wp-includes/update.php +692 -0
  1398. data/lib/templates/wordpress/wp-includes/user.php +2462 -0
  1399. data/lib/templates/wordpress/wp-includes/vars.php +144 -0
  1400. data/lib/templates/wordpress/wp-includes/version.php +35 -0
  1401. data/lib/templates/wordpress/wp-includes/widgets.php +1720 -0
  1402. data/lib/templates/wordpress/wp-includes/wlwmanifest.xml +43 -0
  1403. data/lib/templates/wordpress/wp-includes/wp-db.php +2949 -0
  1404. data/lib/templates/wordpress/wp-includes/wp-diff.php +544 -0
  1405. data/lib/templates/wordpress/wp-links-opml.php +80 -0
  1406. data/lib/templates/wordpress/wp-load.php +81 -0
  1407. data/lib/templates/wordpress/wp-login.php +987 -0
  1408. data/lib/templates/wordpress/wp-mail.php +260 -0
  1409. data/lib/templates/wordpress/wp-settings.php +374 -0
  1410. data/lib/templates/wordpress/wp-signup.php +732 -0
  1411. data/lib/templates/wordpress/wp-trackback.php +127 -0
  1412. data/lib/templates/wordpress/xmlrpc.php +101 -0
  1413. metadata +1455 -0
@@ -0,0 +1,2195 @@
1
+ <?php
2
+ /**
3
+ * WordPress Rewrite API
4
+ *
5
+ * @package WordPress
6
+ * @subpackage Rewrite
7
+ */
8
+
9
+ /**
10
+ * Add a straight rewrite rule.
11
+ *
12
+ * @see WP_Rewrite::add_rule() for long description.
13
+ * @since 2.1.0
14
+ *
15
+ * @param string $regex Regular Expression to match request against.
16
+ * @param string $redirect Page to redirect to.
17
+ * @param string $after Optional, default is 'bottom'. Where to add rule, can also be 'top'.
18
+ */
19
+ function add_rewrite_rule($regex, $redirect, $after = 'bottom') {
20
+ global $wp_rewrite;
21
+ $wp_rewrite->add_rule($regex, $redirect, $after);
22
+ }
23
+
24
+ /**
25
+ * Add a new rewrite tag (like %postname%).
26
+ *
27
+ * The $query parameter is optional. If it is omitted you must ensure that
28
+ * you call this on, or before, the 'init' hook. This is because $query defaults
29
+ * to "$tag=", and for this to work a new query var has to be added.
30
+ *
31
+ * @see WP_Rewrite::add_rewrite_tag()
32
+ * @since 2.1.0
33
+ *
34
+ * @param string $tag Name of the new rewrite tag.
35
+ * @param string $regex Regular expression to substitute the tag for in rewrite rules.
36
+ * @param string $query String to append to the rewritten query. Must end in '='. Optional.
37
+ */
38
+ function add_rewrite_tag( $tag, $regex, $query = '' ) {
39
+ // validate the tag's name
40
+ if ( strlen( $tag ) < 3 || $tag[0] != '%' || $tag[ strlen($tag) - 1 ] != '%' )
41
+ return;
42
+
43
+ global $wp_rewrite, $wp;
44
+
45
+ if ( empty( $query ) ) {
46
+ $qv = trim( $tag, '%' );
47
+ $wp->add_query_var( $qv );
48
+ $query = $qv . '=';
49
+ }
50
+
51
+ $wp_rewrite->add_rewrite_tag( $tag, $regex, $query );
52
+ }
53
+
54
+ /**
55
+ * Add permalink structure.
56
+ *
57
+ * @see WP_Rewrite::add_permastruct()
58
+ * @since 3.0.0
59
+ *
60
+ * @param string $name Name for permalink structure.
61
+ * @param string $struct Permalink structure.
62
+ * @param array $args Optional configuration for building the rules from the permalink structure,
63
+ * see {@link WP_Rewrite::add_permastruct()} for full details.
64
+ */
65
+ function add_permastruct( $name, $struct, $args = array() ) {
66
+ global $wp_rewrite;
67
+
68
+ // backwards compatibility for the old parameters: $with_front and $ep_mask
69
+ if ( ! is_array( $args ) )
70
+ $args = array( 'with_front' => $args );
71
+ if ( func_num_args() == 4 )
72
+ $args['ep_mask'] = func_get_arg( 3 );
73
+
74
+ return $wp_rewrite->add_permastruct( $name, $struct, $args );
75
+ }
76
+
77
+ /**
78
+ * Add a new feed type like /atom1/.
79
+ *
80
+ * @since 2.1.0
81
+ *
82
+ * @param string $feedname
83
+ * @param callback $function Callback to run on feed display.
84
+ * @return string Feed action name.
85
+ */
86
+ function add_feed($feedname, $function) {
87
+ global $wp_rewrite;
88
+ if ( ! in_array($feedname, $wp_rewrite->feeds) ) //override the file if it is
89
+ $wp_rewrite->feeds[] = $feedname;
90
+ $hook = 'do_feed_' . $feedname;
91
+ // Remove default function hook
92
+ remove_action($hook, $hook);
93
+ add_action($hook, $function, 10, 1);
94
+ return $hook;
95
+ }
96
+
97
+ /**
98
+ * Remove rewrite rules and then recreate rewrite rules.
99
+ *
100
+ * @see WP_Rewrite::flush_rules()
101
+ * @since 3.0.0
102
+ *
103
+ * @param bool $hard Whether to update .htaccess (hard flush) or just update
104
+ * rewrite_rules transient (soft flush). Default is true (hard).
105
+ */
106
+ function flush_rewrite_rules( $hard = true ) {
107
+ global $wp_rewrite;
108
+ $wp_rewrite->flush_rules( $hard );
109
+ }
110
+
111
+ /**
112
+ * Endpoint Mask for default, which is nothing.
113
+ *
114
+ * @since 2.1.0
115
+ */
116
+ define('EP_NONE', 0);
117
+
118
+ /**
119
+ * Endpoint Mask for Permalink.
120
+ *
121
+ * @since 2.1.0
122
+ */
123
+ define('EP_PERMALINK', 1);
124
+
125
+ /**
126
+ * Endpoint Mask for Attachment.
127
+ *
128
+ * @since 2.1.0
129
+ */
130
+ define('EP_ATTACHMENT', 2);
131
+
132
+ /**
133
+ * Endpoint Mask for date.
134
+ *
135
+ * @since 2.1.0
136
+ */
137
+ define('EP_DATE', 4);
138
+
139
+ /**
140
+ * Endpoint Mask for year
141
+ *
142
+ * @since 2.1.0
143
+ */
144
+ define('EP_YEAR', 8);
145
+
146
+ /**
147
+ * Endpoint Mask for month.
148
+ *
149
+ * @since 2.1.0
150
+ */
151
+ define('EP_MONTH', 16);
152
+
153
+ /**
154
+ * Endpoint Mask for day.
155
+ *
156
+ * @since 2.1.0
157
+ */
158
+ define('EP_DAY', 32);
159
+
160
+ /**
161
+ * Endpoint Mask for root.
162
+ *
163
+ * @since 2.1.0
164
+ */
165
+ define('EP_ROOT', 64);
166
+
167
+ /**
168
+ * Endpoint Mask for comments.
169
+ *
170
+ * @since 2.1.0
171
+ */
172
+ define('EP_COMMENTS', 128);
173
+
174
+ /**
175
+ * Endpoint Mask for searches.
176
+ *
177
+ * @since 2.1.0
178
+ */
179
+ define('EP_SEARCH', 256);
180
+
181
+ /**
182
+ * Endpoint Mask for categories.
183
+ *
184
+ * @since 2.1.0
185
+ */
186
+ define('EP_CATEGORIES', 512);
187
+
188
+ /**
189
+ * Endpoint Mask for tags.
190
+ *
191
+ * @since 2.3.0
192
+ */
193
+ define('EP_TAGS', 1024);
194
+
195
+ /**
196
+ * Endpoint Mask for authors.
197
+ *
198
+ * @since 2.1.0
199
+ */
200
+ define('EP_AUTHORS', 2048);
201
+
202
+ /**
203
+ * Endpoint Mask for pages.
204
+ *
205
+ * @since 2.1.0
206
+ */
207
+ define('EP_PAGES', 4096);
208
+
209
+ /**
210
+ * Endpoint Mask for all archive views.
211
+ *
212
+ * @since 3.7.0
213
+ */
214
+ define( 'EP_ALL_ARCHIVES', EP_DATE | EP_YEAR | EP_MONTH | EP_DAY | EP_CATEGORIES | EP_TAGS | EP_AUTHORS );
215
+
216
+ /**
217
+ * Endpoint Mask for everything.
218
+ *
219
+ * @since 2.1.0
220
+ */
221
+ define( 'EP_ALL', EP_PERMALINK | EP_ATTACHMENT | EP_ROOT | EP_COMMENTS | EP_SEARCH | EP_PAGES | EP_ALL_ARCHIVES );
222
+
223
+ /**
224
+ * Add an endpoint, like /trackback/.
225
+ *
226
+ * Adding an endpoint creates extra rewrite rules for each of the matching
227
+ * places specified by the provided bitmask. For example:
228
+ *
229
+ * add_rewrite_endpoint( 'json', EP_PERMALINK | EP_PAGES );
230
+ *
231
+ * will add a new rewrite rule ending with "json(/(.*))?/?$" for every permastruct
232
+ * that describes a permalink (post) or page. This is rewritten to "json=$match"
233
+ * where $match is the part of the URL matched by the endpoint regex (e.g. "foo" in
234
+ * "[permalink]/json/foo/").
235
+ *
236
+ * A new query var with the same name as the endpoint will also be created.
237
+ *
238
+ * When specifying $places ensure that you are using the EP_* constants (or a
239
+ * combination of them using the bitwise OR operator) as their values are not
240
+ * guaranteed to remain static (especially `EP_ALL`).
241
+ *
242
+ * Be sure to flush the rewrite rules - {@see flush_rewrite_rules()} - when your plugin gets
243
+ * activated and deactivated.
244
+ *
245
+ * @since 2.1.0
246
+ * @see WP_Rewrite::add_endpoint()
247
+ * @global object $wp_rewrite
248
+ *
249
+ * @param string $name Name of the endpoint.
250
+ * @param int $places Endpoint mask describing the places the endpoint should be added.
251
+ * @param string $query_var Name of the corresponding query variable. Defaults to $name.
252
+ */
253
+ function add_rewrite_endpoint( $name, $places, $query_var = null ) {
254
+ global $wp_rewrite;
255
+ $wp_rewrite->add_endpoint( $name, $places, $query_var );
256
+ }
257
+
258
+ /**
259
+ * Filter the URL base for taxonomies.
260
+ *
261
+ * To remove any manually prepended /index.php/.
262
+ *
263
+ * @access private
264
+ * @since 2.6.0
265
+ *
266
+ * @param string $base The taxonomy base that we're going to filter
267
+ * @return string
268
+ */
269
+ function _wp_filter_taxonomy_base( $base ) {
270
+ if ( !empty( $base ) ) {
271
+ $base = preg_replace( '|^/index\.php/|', '', $base );
272
+ $base = trim( $base, '/' );
273
+ }
274
+ return $base;
275
+ }
276
+
277
+ /**
278
+ * Examine a url and try to determine the post ID it represents.
279
+ *
280
+ * Checks are supposedly from the hosted site blog.
281
+ *
282
+ * @since 1.0.0
283
+ *
284
+ * @param string $url Permalink to check.
285
+ * @return int Post ID, or 0 on failure.
286
+ */
287
+ function url_to_postid($url) {
288
+ global $wp_rewrite;
289
+
290
+ /**
291
+ * Filter the URL to derive the post ID from.
292
+ *
293
+ * @since 2.2.0
294
+ *
295
+ * @param string $url The URL to derive the post ID from.
296
+ */
297
+ $url = apply_filters( 'url_to_postid', $url );
298
+
299
+ // First, check to see if there is a 'p=N' or 'page_id=N' to match against
300
+ if ( preg_match('#[?&](p|page_id|attachment_id)=(\d+)#', $url, $values) ) {
301
+ $id = absint($values[2]);
302
+ if ( $id )
303
+ return $id;
304
+ }
305
+
306
+ // Check to see if we are using rewrite rules
307
+ $rewrite = $wp_rewrite->wp_rewrite_rules();
308
+
309
+ // Not using rewrite rules, and 'p=N' and 'page_id=N' methods failed, so we're out of options
310
+ if ( empty($rewrite) )
311
+ return 0;
312
+
313
+ // Get rid of the #anchor
314
+ $url_split = explode('#', $url);
315
+ $url = $url_split[0];
316
+
317
+ // Get rid of URL ?query=string
318
+ $url_split = explode('?', $url);
319
+ $url = $url_split[0];
320
+
321
+ // Add 'www.' if it is absent and should be there
322
+ if ( false !== strpos(home_url(), '://www.') && false === strpos($url, '://www.') )
323
+ $url = str_replace('://', '://www.', $url);
324
+
325
+ // Strip 'www.' if it is present and shouldn't be
326
+ if ( false === strpos(home_url(), '://www.') )
327
+ $url = str_replace('://www.', '://', $url);
328
+
329
+ // Strip 'index.php/' if we're not using path info permalinks
330
+ if ( !$wp_rewrite->using_index_permalinks() )
331
+ $url = str_replace( $wp_rewrite->index . '/', '', $url );
332
+
333
+ if ( false !== strpos( trailingslashit( $url ), home_url( '/' ) ) ) {
334
+ // Chop off http://domain.com/[path]
335
+ $url = str_replace(home_url(), '', $url);
336
+ } else {
337
+ // Chop off /path/to/blog
338
+ $home_path = parse_url( home_url( '/' ) );
339
+ $home_path = isset( $home_path['path'] ) ? $home_path['path'] : '' ;
340
+ $url = preg_replace( sprintf( '#^%s#', preg_quote( $home_path ) ), '', trailingslashit( $url ) );
341
+ }
342
+
343
+ // Trim leading and lagging slashes
344
+ $url = trim($url, '/');
345
+
346
+ $request = $url;
347
+ $post_type_query_vars = array();
348
+
349
+ foreach ( get_post_types( array() , 'objects' ) as $post_type => $t ) {
350
+ if ( ! empty( $t->query_var ) )
351
+ $post_type_query_vars[ $t->query_var ] = $post_type;
352
+ }
353
+
354
+ // Look for matches.
355
+ $request_match = $request;
356
+ foreach ( (array)$rewrite as $match => $query) {
357
+
358
+ // If the requesting file is the anchor of the match, prepend it
359
+ // to the path info.
360
+ if ( !empty($url) && ($url != $request) && (strpos($match, $url) === 0) )
361
+ $request_match = $url . '/' . $request;
362
+
363
+ if ( preg_match("#^$match#", $request_match, $matches) ) {
364
+
365
+ if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/', $query, $varmatch ) ) {
366
+ // This is a verbose page match, let's check to be sure about it.
367
+ if ( ! get_page_by_path( $matches[ $varmatch[1] ] ) )
368
+ continue;
369
+ }
370
+
371
+ // Got a match.
372
+ // Trim the query of everything up to the '?'.
373
+ $query = preg_replace("!^.+\?!", '', $query);
374
+
375
+ // Substitute the substring matches into the query.
376
+ $query = addslashes(WP_MatchesMapRegex::apply($query, $matches));
377
+
378
+ // Filter out non-public query vars
379
+ global $wp;
380
+ parse_str( $query, $query_vars );
381
+ $query = array();
382
+ foreach ( (array) $query_vars as $key => $value ) {
383
+ if ( in_array( $key, $wp->public_query_vars ) ){
384
+ $query[$key] = $value;
385
+ if ( isset( $post_type_query_vars[$key] ) ) {
386
+ $query['post_type'] = $post_type_query_vars[$key];
387
+ $query['name'] = $value;
388
+ }
389
+ }
390
+ }
391
+
392
+ // Do the query
393
+ $query = new WP_Query( $query );
394
+ if ( ! empty( $query->posts ) && $query->is_singular )
395
+ return $query->post->ID;
396
+ else
397
+ return 0;
398
+ }
399
+ }
400
+ return 0;
401
+ }
402
+
403
+ /**
404
+ * WordPress Rewrite Component.
405
+ *
406
+ * The WordPress Rewrite class writes the rewrite module rules to the .htaccess
407
+ * file. It also handles parsing the request to get the correct setup for the
408
+ * WordPress Query class.
409
+ *
410
+ * The Rewrite along with WP class function as a front controller for WordPress.
411
+ * You can add rules to trigger your page view and processing using this
412
+ * component. The full functionality of a front controller does not exist,
413
+ * meaning you can't define how the template files load based on the rewrite
414
+ * rules.
415
+ *
416
+ * @since 1.5.0
417
+ */
418
+ class WP_Rewrite {
419
+ /**
420
+ * Permalink structure for posts.
421
+ *
422
+ * @since 1.5.0
423
+ * @var string
424
+ */
425
+ public $permalink_structure;
426
+
427
+ /**
428
+ * Whether to add trailing slashes.
429
+ *
430
+ * @since 2.2.0
431
+ * @var bool
432
+ */
433
+ public $use_trailing_slashes;
434
+
435
+ /**
436
+ * Base for the author permalink structure (example.com/$author_base/authorname).
437
+ *
438
+ * @since 1.5.0
439
+ * @access private
440
+ * @var string
441
+ */
442
+ var $author_base = 'author';
443
+
444
+ /**
445
+ * Permalink structure for author archives.
446
+ *
447
+ * @since 1.5.0
448
+ * @access private
449
+ * @var string
450
+ */
451
+ var $author_structure;
452
+
453
+ /**
454
+ * Permalink structure for date archives.
455
+ *
456
+ * @since 1.5.0
457
+ * @access private
458
+ * @var string
459
+ */
460
+ var $date_structure;
461
+
462
+ /**
463
+ * Permalink structure for pages.
464
+ *
465
+ * @since 1.5.0
466
+ * @access private
467
+ * @var string
468
+ */
469
+ var $page_structure;
470
+
471
+ /**
472
+ * Base of the search permalink structure (example.com/$search_base/query).
473
+ *
474
+ * @since 1.5.0
475
+ * @access private
476
+ * @var string
477
+ */
478
+ var $search_base = 'search';
479
+
480
+ /**
481
+ * Permalink structure for searches.
482
+ *
483
+ * @since 1.5.0
484
+ * @access private
485
+ * @var string
486
+ */
487
+ var $search_structure;
488
+
489
+ /**
490
+ * Comments permalink base.
491
+ *
492
+ * @since 1.5.0
493
+ * @access private
494
+ * @var string
495
+ */
496
+ var $comments_base = 'comments';
497
+
498
+ /**
499
+ * Pagination permalink base.
500
+ *
501
+ * @since 3.1.0
502
+ * @var string
503
+ */
504
+ public $pagination_base = 'page';
505
+
506
+ /**
507
+ * Comments pagination permalink base.
508
+ *
509
+ * @since 4.2.0
510
+ * @access private
511
+ * @var string
512
+ */
513
+ var $comments_pagination_base = 'comment-page';
514
+
515
+ /**
516
+ * Feed permalink base.
517
+ *
518
+ * @since 1.5.0
519
+ * @access private
520
+ * @var string
521
+ */
522
+ var $feed_base = 'feed';
523
+
524
+ /**
525
+ * Comments feed permalink structure.
526
+ *
527
+ * @since 1.5.0
528
+ * @access private
529
+ * @var string
530
+ */
531
+ var $comment_feed_structure;
532
+
533
+ /**
534
+ * Feed request permalink structure.
535
+ *
536
+ * @since 1.5.0
537
+ * @access private
538
+ * @var string
539
+ */
540
+ var $feed_structure;
541
+
542
+ /**
543
+ * The static portion of the post permalink structure.
544
+ *
545
+ * If the permalink structure is "/archive/%post_id%" then the front
546
+ * is "/archive/". If the permalink structure is "/%year%/%postname%/"
547
+ * then the front is "/".
548
+ *
549
+ * @see WP_Rewrite::init()
550
+ * @since 1.5.0
551
+ * @var string
552
+ */
553
+ public $front;
554
+
555
+ /**
556
+ * The prefix for all permalink structures.
557
+ *
558
+ * If PATHINFO/index permalinks are in use then the root is the value of
559
+ * {@link WP_Rewrite::$index} with a trailing slash appended. Otherwise
560
+ * the root will be empty.
561
+ *
562
+ * @see WP_Rewrite::init()
563
+ * @see WP_Rewrite::using_index_permalinks()
564
+ * @since 1.5.0
565
+ * @var string
566
+ */
567
+ public $root = '';
568
+
569
+ /**
570
+ * The name of the index file which is the entry point to all requests.
571
+ *
572
+ * @since 1.5.0
573
+ * @access public
574
+ * @var string
575
+ */
576
+ public $index = 'index.php';
577
+
578
+ /**
579
+ * Variable name to use for regex matches in the rewritten query.
580
+ *
581
+ * @since 1.5.0
582
+ * @access private
583
+ * @var string
584
+ */
585
+ var $matches = '';
586
+
587
+ /**
588
+ * Rewrite rules to match against the request to find the redirect or query.
589
+ *
590
+ * @since 1.5.0
591
+ * @access private
592
+ * @var array
593
+ */
594
+ var $rules;
595
+
596
+ /**
597
+ * Additional rules added external to the rewrite class.
598
+ *
599
+ * Those not generated by the class, see add_rewrite_rule().
600
+ *
601
+ * @since 2.1.0
602
+ * @access private
603
+ * @var array
604
+ */
605
+ var $extra_rules = array();
606
+
607
+ /**
608
+ * Additional rules that belong at the beginning to match first.
609
+ *
610
+ * Those not generated by the class, see add_rewrite_rule().
611
+ *
612
+ * @since 2.3.0
613
+ * @access private
614
+ * @var array
615
+ */
616
+ var $extra_rules_top = array();
617
+
618
+ /**
619
+ * Rules that don't redirect to WordPress' index.php.
620
+ *
621
+ * These rules are written to the mod_rewrite portion of the .htaccess,
622
+ * and are added by {@link add_external_rule()}.
623
+ *
624
+ * @since 2.1.0
625
+ * @access private
626
+ * @var array
627
+ */
628
+ var $non_wp_rules = array();
629
+
630
+ /**
631
+ * Extra permalink structures, e.g. categories, added by {@link add_permastruct()}.
632
+ *
633
+ * @since 2.1.0
634
+ * @access private
635
+ * @var array
636
+ */
637
+ var $extra_permastructs = array();
638
+
639
+ /**
640
+ * Endpoints (like /trackback/) added by {@link add_rewrite_endpoint()}.
641
+ *
642
+ * @since 2.1.0
643
+ * @access private
644
+ * @var array
645
+ */
646
+ var $endpoints;
647
+
648
+ /**
649
+ * Whether to write every mod_rewrite rule for WordPress into the .htaccess file.
650
+ *
651
+ * This is off by default, turning it on might print a lot of rewrite rules
652
+ * to the .htaccess file.
653
+ *
654
+ * @see WP_Rewrite::mod_rewrite_rules()
655
+ * @since 2.0.0
656
+ * @access public
657
+ * @var bool
658
+ */
659
+ public $use_verbose_rules = false;
660
+
661
+ /**
662
+ * Could post permalinks be confused with those of pages?
663
+ *
664
+ * If the first rewrite tag in the post permalink structure is one that could
665
+ * also match a page name (e.g. %postname% or %author%) then this flag is
666
+ * set to true. Prior to WordPress 3.3 this flag indicated that every page
667
+ * would have a set of rules added to the top of the rewrite rules array.
668
+ * Now it tells {@link WP::parse_request()} to check if a URL matching the
669
+ * page permastruct is actually a page before accepting it.
670
+ *
671
+ * @link https://core.trac.wordpress.org/ticket/16687
672
+ * @see WP_Rewrite::init()
673
+ * @since 2.5.0
674
+ * @access public
675
+ * @var bool
676
+ */
677
+ public $use_verbose_page_rules = true;
678
+
679
+ /**
680
+ * Rewrite tags that can be used in permalink structures.
681
+ *
682
+ * These are translated into the regular expressions stored in
683
+ * {@link WP_Rewrite::$rewritereplace} and are rewritten to the
684
+ * query variables listed in {@link WP_Rewrite::$queryreplace}.
685
+ *
686
+ * Additional tags can be added with {@link add_rewrite_tag()}.
687
+ *
688
+ * @since 1.5.0
689
+ * @access private
690
+ * @var array
691
+ */
692
+ var $rewritecode = array(
693
+ '%year%',
694
+ '%monthnum%',
695
+ '%day%',
696
+ '%hour%',
697
+ '%minute%',
698
+ '%second%',
699
+ '%postname%',
700
+ '%post_id%',
701
+ '%author%',
702
+ '%pagename%',
703
+ '%search%'
704
+ );
705
+
706
+ /**
707
+ * Regular expressions to be substituted into rewrite rules in place
708
+ * of rewrite tags, see {@link WP_Rewrite::$rewritecode}.
709
+ *
710
+ * @since 1.5.0
711
+ * @access private
712
+ * @var array
713
+ */
714
+ var $rewritereplace = array(
715
+ '([0-9]{4})',
716
+ '([0-9]{1,2})',
717
+ '([0-9]{1,2})',
718
+ '([0-9]{1,2})',
719
+ '([0-9]{1,2})',
720
+ '([0-9]{1,2})',
721
+ '([^/]+)',
722
+ '([0-9]+)',
723
+ '([^/]+)',
724
+ '([^/]+?)',
725
+ '(.+)'
726
+ );
727
+
728
+ /**
729
+ * Query variables that rewrite tags map to, see {@link WP_Rewrite::$rewritecode}.
730
+ *
731
+ * @since 1.5.0
732
+ * @access private
733
+ * @var array
734
+ */
735
+ var $queryreplace = array(
736
+ 'year=',
737
+ 'monthnum=',
738
+ 'day=',
739
+ 'hour=',
740
+ 'minute=',
741
+ 'second=',
742
+ 'name=',
743
+ 'p=',
744
+ 'author_name=',
745
+ 'pagename=',
746
+ 's='
747
+ );
748
+
749
+ /**
750
+ * Supported default feeds.
751
+ *
752
+ * @since 1.5.0
753
+ * @var array
754
+ */
755
+ public $feeds = array( 'feed', 'rdf', 'rss', 'rss2', 'atom' );
756
+
757
+ /**
758
+ * Whether permalinks are being used.
759
+ *
760
+ * This can be either rewrite module or permalink in the HTTP query string.
761
+ *
762
+ * @since 1.5.0
763
+ * @access public
764
+ *
765
+ * @return bool True, if permalinks are enabled.
766
+ */
767
+ public function using_permalinks() {
768
+ return ! empty($this->permalink_structure);
769
+ }
770
+
771
+ /**
772
+ * Whether permalinks are being used and rewrite module is not enabled.
773
+ *
774
+ * Means that permalink links are enabled and index.php is in the URL.
775
+ *
776
+ * @since 1.5.0
777
+ * @access public
778
+ *
779
+ * @return bool
780
+ */
781
+ public function using_index_permalinks() {
782
+ if ( empty($this->permalink_structure) )
783
+ return false;
784
+
785
+ // If the index is not in the permalink, we're using mod_rewrite.
786
+ if ( preg_match('#^/*' . $this->index . '#', $this->permalink_structure) )
787
+ return true;
788
+
789
+ return false;
790
+ }
791
+
792
+ /**
793
+ * Whether permalinks are being used and rewrite module is enabled.
794
+ *
795
+ * Using permalinks and index.php is not in the URL.
796
+ *
797
+ * @since 1.5.0
798
+ * @access public
799
+ *
800
+ * @return bool
801
+ */
802
+ public function using_mod_rewrite_permalinks() {
803
+ if ( $this->using_permalinks() && ! $this->using_index_permalinks() )
804
+ return true;
805
+ else
806
+ return false;
807
+ }
808
+
809
+ /**
810
+ * Index for matches for usage in preg_*() functions.
811
+ *
812
+ * The format of the string is, with empty matches property value, '$NUM'.
813
+ * The 'NUM' will be replaced with the value in the $number parameter. With
814
+ * the matches property not empty, the value of the returned string will
815
+ * contain that value of the matches property. The format then will be
816
+ * '$MATCHES[NUM]', with MATCHES as the value in the property and NUM the
817
+ * value of the $number parameter.
818
+ *
819
+ * @since 1.5.0
820
+ * @access public
821
+ *
822
+ * @param int $number Index number.
823
+ * @return string
824
+ */
825
+ public function preg_index($number) {
826
+ $match_prefix = '$';
827
+ $match_suffix = '';
828
+
829
+ if ( ! empty($this->matches) ) {
830
+ $match_prefix = '$' . $this->matches . '[';
831
+ $match_suffix = ']';
832
+ }
833
+
834
+ return "$match_prefix$number$match_suffix";
835
+ }
836
+
837
+ /**
838
+ * Retrieve all page and attachments for pages URIs.
839
+ *
840
+ * The attachments are for those that have pages as parents and will be
841
+ * retrieved.
842
+ *
843
+ * @since 2.5.0
844
+ * @access public
845
+ *
846
+ * @return array Array of page URIs as first element and attachment URIs as second element.
847
+ */
848
+ public function page_uri_index() {
849
+ global $wpdb;
850
+
851
+ //get pages in order of hierarchy, i.e. children after parents
852
+ $pages = $wpdb->get_results("SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_type = 'page' AND post_status != 'auto-draft'");
853
+ $posts = get_page_hierarchy( $pages );
854
+
855
+ // If we have no pages get out quick
856
+ if ( !$posts )
857
+ return array( array(), array() );
858
+
859
+ //now reverse it, because we need parents after children for rewrite rules to work properly
860
+ $posts = array_reverse($posts, true);
861
+
862
+ $page_uris = array();
863
+ $page_attachment_uris = array();
864
+
865
+ foreach ( $posts as $id => $post ) {
866
+ // URL => page name
867
+ $uri = get_page_uri($id);
868
+ $attachments = $wpdb->get_results( $wpdb->prepare( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_type = 'attachment' AND post_parent = %d", $id ));
869
+ if ( !empty($attachments) ) {
870
+ foreach ( $attachments as $attachment ) {
871
+ $attach_uri = get_page_uri($attachment->ID);
872
+ $page_attachment_uris[$attach_uri] = $attachment->ID;
873
+ }
874
+ }
875
+
876
+ $page_uris[$uri] = $id;
877
+ }
878
+
879
+ return array( $page_uris, $page_attachment_uris );
880
+ }
881
+
882
+ /**
883
+ * Retrieve all of the rewrite rules for pages.
884
+ *
885
+ * @since 1.5.0
886
+ * @access public
887
+ *
888
+ * @return array
889
+ */
890
+ public function page_rewrite_rules() {
891
+ // the extra .? at the beginning prevents clashes with other regular expressions in the rules array
892
+ $this->add_rewrite_tag( '%pagename%', '(.?.+?)', 'pagename=' );
893
+
894
+ return $this->generate_rewrite_rules( $this->get_page_permastruct(), EP_PAGES, true, true, false, false );
895
+ }
896
+
897
+ /**
898
+ * Retrieve date permalink structure, with year, month, and day.
899
+ *
900
+ * The permalink structure for the date, if not set already depends on the
901
+ * permalink structure. It can be one of three formats. The first is year,
902
+ * month, day; the second is day, month, year; and the last format is month,
903
+ * day, year. These are matched against the permalink structure for which
904
+ * one is used. If none matches, then the default will be used, which is
905
+ * year, month, day.
906
+ *
907
+ * Prevents post ID and date permalinks from overlapping. In the case of
908
+ * post_id, the date permalink will be prepended with front permalink with
909
+ * 'date/' before the actual permalink to form the complete date permalink
910
+ * structure.
911
+ *
912
+ * @since 1.5.0
913
+ * @access public
914
+ *
915
+ * @return string|false False on no permalink structure. Date permalink structure.
916
+ */
917
+ public function get_date_permastruct() {
918
+ if ( isset($this->date_structure) )
919
+ return $this->date_structure;
920
+
921
+ if ( empty($this->permalink_structure) ) {
922
+ $this->date_structure = '';
923
+ return false;
924
+ }
925
+
926
+ // The date permalink must have year, month, and day separated by slashes.
927
+ $endians = array('%year%/%monthnum%/%day%', '%day%/%monthnum%/%year%', '%monthnum%/%day%/%year%');
928
+
929
+ $this->date_structure = '';
930
+ $date_endian = '';
931
+
932
+ foreach ( $endians as $endian ) {
933
+ if ( false !== strpos($this->permalink_structure, $endian) ) {
934
+ $date_endian= $endian;
935
+ break;
936
+ }
937
+ }
938
+
939
+ if ( empty($date_endian) )
940
+ $date_endian = '%year%/%monthnum%/%day%';
941
+
942
+ // Do not allow the date tags and %post_id% to overlap in the permalink
943
+ // structure. If they do, move the date tags to $front/date/.
944
+ $front = $this->front;
945
+ preg_match_all('/%.+?%/', $this->permalink_structure, $tokens);
946
+ $tok_index = 1;
947
+ foreach ( (array) $tokens[0] as $token) {
948
+ if ( '%post_id%' == $token && ($tok_index <= 3) ) {
949
+ $front = $front . 'date/';
950
+ break;
951
+ }
952
+ $tok_index++;
953
+ }
954
+
955
+ $this->date_structure = $front . $date_endian;
956
+
957
+ return $this->date_structure;
958
+ }
959
+
960
+ /**
961
+ * Retrieve the year permalink structure without month and day.
962
+ *
963
+ * Gets the date permalink structure and strips out the month and day
964
+ * permalink structures.
965
+ *
966
+ * @since 1.5.0
967
+ * @access public
968
+ *
969
+ * @return false|string False on failure. Year structure on success.
970
+ */
971
+ public function get_year_permastruct() {
972
+ $structure = $this->get_date_permastruct();
973
+
974
+ if ( empty($structure) )
975
+ return false;
976
+
977
+ $structure = str_replace('%monthnum%', '', $structure);
978
+ $structure = str_replace('%day%', '', $structure);
979
+
980
+ $structure = preg_replace('#/+#', '/', $structure);
981
+
982
+ return $structure;
983
+ }
984
+
985
+ /**
986
+ * Retrieve the month permalink structure without day and with year.
987
+ *
988
+ * Gets the date permalink structure and strips out the day permalink
989
+ * structures. Keeps the year permalink structure.
990
+ *
991
+ * @since 1.5.0
992
+ * @access public
993
+ *
994
+ * @return false|string False on failure. Year/Month structure on success.
995
+ */
996
+ public function get_month_permastruct() {
997
+ $structure = $this->get_date_permastruct();
998
+
999
+ if ( empty($structure) )
1000
+ return false;
1001
+
1002
+ $structure = str_replace('%day%', '', $structure);
1003
+
1004
+ $structure = preg_replace('#/+#', '/', $structure);
1005
+
1006
+ return $structure;
1007
+ }
1008
+
1009
+ /**
1010
+ * Retrieve the day permalink structure with month and year.
1011
+ *
1012
+ * Keeps date permalink structure with all year, month, and day.
1013
+ *
1014
+ * @since 1.5.0
1015
+ * @access public
1016
+ *
1017
+ * @return string|false False on failure. Year/Month/Day structure on success.
1018
+ */
1019
+ public function get_day_permastruct() {
1020
+ return $this->get_date_permastruct();
1021
+ }
1022
+
1023
+ /**
1024
+ * Retrieve the permalink structure for categories.
1025
+ *
1026
+ * If the category_base property has no value, then the category structure
1027
+ * will have the front property value, followed by 'category', and finally
1028
+ * '%category%'. If it does, then the root property will be used, along with
1029
+ * the category_base property value.
1030
+ *
1031
+ * @since 1.5.0
1032
+ * @access public
1033
+ *
1034
+ * @return bool|string False on failure. Category permalink structure.
1035
+ */
1036
+ public function get_category_permastruct() {
1037
+ return $this->get_extra_permastruct('category');
1038
+ }
1039
+
1040
+ /**
1041
+ * Retrieve the permalink structure for tags.
1042
+ *
1043
+ * If the tag_base property has no value, then the tag structure will have
1044
+ * the front property value, followed by 'tag', and finally '%tag%'. If it
1045
+ * does, then the root property will be used, along with the tag_base
1046
+ * property value.
1047
+ *
1048
+ * @since 2.3.0
1049
+ * @access public
1050
+ *
1051
+ * @return bool|string False on failure. Tag permalink structure.
1052
+ */
1053
+ public function get_tag_permastruct() {
1054
+ return $this->get_extra_permastruct('post_tag');
1055
+ }
1056
+
1057
+ /**
1058
+ * Retrieve extra permalink structure by name.
1059
+ *
1060
+ * @since 2.5.0
1061
+ * @access public
1062
+ *
1063
+ * @param string $name Permalink structure name.
1064
+ * @return string|bool False if not found. Permalink structure string.
1065
+ */
1066
+ public function get_extra_permastruct($name) {
1067
+ if ( empty($this->permalink_structure) )
1068
+ return false;
1069
+
1070
+ if ( isset($this->extra_permastructs[$name]) )
1071
+ return $this->extra_permastructs[$name]['struct'];
1072
+
1073
+ return false;
1074
+ }
1075
+
1076
+ /**
1077
+ * Retrieve the author permalink structure.
1078
+ *
1079
+ * The permalink structure is front property, author base, and finally
1080
+ * '/%author%'. Will set the author_structure property and then return it
1081
+ * without attempting to set the value again.
1082
+ *
1083
+ * @since 1.5.0
1084
+ * @access public
1085
+ *
1086
+ * @return string|false False if not found. Permalink structure string.
1087
+ */
1088
+ public function get_author_permastruct() {
1089
+ if ( isset($this->author_structure) )
1090
+ return $this->author_structure;
1091
+
1092
+ if ( empty($this->permalink_structure) ) {
1093
+ $this->author_structure = '';
1094
+ return false;
1095
+ }
1096
+
1097
+ $this->author_structure = $this->front . $this->author_base . '/%author%';
1098
+
1099
+ return $this->author_structure;
1100
+ }
1101
+
1102
+ /**
1103
+ * Retrieve the search permalink structure.
1104
+ *
1105
+ * The permalink structure is root property, search base, and finally
1106
+ * '/%search%'. Will set the search_structure property and then return it
1107
+ * without attempting to set the value again.
1108
+ *
1109
+ * @since 1.5.0
1110
+ * @access public
1111
+ *
1112
+ * @return string|false False if not found. Permalink structure string.
1113
+ */
1114
+ public function get_search_permastruct() {
1115
+ if ( isset($this->search_structure) )
1116
+ return $this->search_structure;
1117
+
1118
+ if ( empty($this->permalink_structure) ) {
1119
+ $this->search_structure = '';
1120
+ return false;
1121
+ }
1122
+
1123
+ $this->search_structure = $this->root . $this->search_base . '/%search%';
1124
+
1125
+ return $this->search_structure;
1126
+ }
1127
+
1128
+ /**
1129
+ * Retrieve the page permalink structure.
1130
+ *
1131
+ * The permalink structure is root property, and '%pagename%'. Will set the
1132
+ * page_structure property and then return it without attempting to set the
1133
+ * value again.
1134
+ *
1135
+ * @since 1.5.0
1136
+ * @access public
1137
+ *
1138
+ * @return string|false False if not found. Permalink structure string.
1139
+ */
1140
+ public function get_page_permastruct() {
1141
+ if ( isset($this->page_structure) )
1142
+ return $this->page_structure;
1143
+
1144
+ if (empty($this->permalink_structure)) {
1145
+ $this->page_structure = '';
1146
+ return false;
1147
+ }
1148
+
1149
+ $this->page_structure = $this->root . '%pagename%';
1150
+
1151
+ return $this->page_structure;
1152
+ }
1153
+
1154
+ /**
1155
+ * Retrieve the feed permalink structure.
1156
+ *
1157
+ * The permalink structure is root property, feed base, and finally
1158
+ * '/%feed%'. Will set the feed_structure property and then return it
1159
+ * without attempting to set the value again.
1160
+ *
1161
+ * @since 1.5.0
1162
+ * @access public
1163
+ *
1164
+ * @return string|false False if not found. Permalink structure string.
1165
+ */
1166
+ public function get_feed_permastruct() {
1167
+ if ( isset($this->feed_structure) )
1168
+ return $this->feed_structure;
1169
+
1170
+ if ( empty($this->permalink_structure) ) {
1171
+ $this->feed_structure = '';
1172
+ return false;
1173
+ }
1174
+
1175
+ $this->feed_structure = $this->root . $this->feed_base . '/%feed%';
1176
+
1177
+ return $this->feed_structure;
1178
+ }
1179
+
1180
+ /**
1181
+ * Retrieve the comment feed permalink structure.
1182
+ *
1183
+ * The permalink structure is root property, comment base property, feed
1184
+ * base and finally '/%feed%'. Will set the comment_feed_structure property
1185
+ * and then return it without attempting to set the value again.
1186
+ *
1187
+ * @since 1.5.0
1188
+ * @access public
1189
+ *
1190
+ * @return string|bool False if not found. Permalink structure string.
1191
+ */
1192
+ public function get_comment_feed_permastruct() {
1193
+ if ( isset($this->comment_feed_structure) )
1194
+ return $this->comment_feed_structure;
1195
+
1196
+ if (empty($this->permalink_structure)) {
1197
+ $this->comment_feed_structure = '';
1198
+ return false;
1199
+ }
1200
+
1201
+ $this->comment_feed_structure = $this->root . $this->comments_base . '/' . $this->feed_base . '/%feed%';
1202
+
1203
+ return $this->comment_feed_structure;
1204
+ }
1205
+
1206
+ /**
1207
+ * Add or update existing rewrite tags (e.g. %postname%).
1208
+ *
1209
+ * If the tag already exists, replace the existing pattern and query for
1210
+ * that tag, otherwise add the new tag.
1211
+ *
1212
+ * @see WP_Rewrite::$rewritecode
1213
+ * @see WP_Rewrite::$rewritereplace
1214
+ * @see WP_Rewrite::$queryreplace
1215
+ * @since 1.5.0
1216
+ * @access public
1217
+ *
1218
+ * @param string $tag Name of the rewrite tag to add or update.
1219
+ * @param string $regex Regular expression to substitute the tag for in rewrite rules.
1220
+ * @param string $query String to append to the rewritten query. Must end in '='.
1221
+ */
1222
+ public function add_rewrite_tag( $tag, $regex, $query ) {
1223
+ $position = array_search( $tag, $this->rewritecode );
1224
+ if ( false !== $position && null !== $position ) {
1225
+ $this->rewritereplace[ $position ] = $regex;
1226
+ $this->queryreplace[ $position ] = $query;
1227
+ } else {
1228
+ $this->rewritecode[] = $tag;
1229
+ $this->rewritereplace[] = $regex;
1230
+ $this->queryreplace[] = $query;
1231
+ }
1232
+ }
1233
+
1234
+ /**
1235
+ * Generate rewrite rules from a permalink structure.
1236
+ *
1237
+ * The main WP_Rewrite function for building the rewrite rule list. The
1238
+ * contents of the function is a mix of black magic and regular expressions,
1239
+ * so best just ignore the contents and move to the parameters.
1240
+ *
1241
+ * @since 1.5.0
1242
+ * @access public
1243
+ *
1244
+ * @param string $permalink_structure The permalink structure.
1245
+ * @param int $ep_mask Endpoint mask defining what endpoints are added to the structure. Default is EP_NONE.
1246
+ * @param bool $paged Should archive pagination rules be added for the structure? Default is true.
1247
+ * @param bool $feed Should feed rewrite rules be added for the structure? Default is true.
1248
+ * @param bool $forcomments Should the feed rules be a query for a comments feed? Default is false.
1249
+ * @param bool $walk_dirs Should the 'directories' making up the structure be walked over and rewrite rules
1250
+ * built for each in turn? Default is true.
1251
+ * @param bool $endpoints Should endpoints be applied to the generated rewrite rules? Default is true.
1252
+ * @return array Rewrite rule list.
1253
+ */
1254
+ public function generate_rewrite_rules($permalink_structure, $ep_mask = EP_NONE, $paged = true, $feed = true, $forcomments = false, $walk_dirs = true, $endpoints = true) {
1255
+ //build a regex to match the feed section of URLs, something like (feed|atom|rss|rss2)/?
1256
+ $feedregex2 = '';
1257
+ foreach ( (array) $this->feeds as $feed_name)
1258
+ $feedregex2 .= $feed_name . '|';
1259
+ $feedregex2 = '(' . trim($feedregex2, '|') . ')/?$';
1260
+
1261
+ //$feedregex is identical but with /feed/ added on as well, so URLs like <permalink>/feed/atom
1262
+ //and <permalink>/atom are both possible
1263
+ $feedregex = $this->feed_base . '/' . $feedregex2;
1264
+
1265
+ //build a regex to match the trackback and page/xx parts of URLs
1266
+ $trackbackregex = 'trackback/?$';
1267
+ $pageregex = $this->pagination_base . '/?([0-9]{1,})/?$';
1268
+ $commentregex = $this->comments_pagination_base . '-([0-9]{1,})/?$';
1269
+
1270
+ //build up an array of endpoint regexes to append => queries to append
1271
+ if ( $endpoints ) {
1272
+ $ep_query_append = array ();
1273
+ foreach ( (array) $this->endpoints as $endpoint) {
1274
+ //match everything after the endpoint name, but allow for nothing to appear there
1275
+ $epmatch = $endpoint[1] . '(/(.*))?/?$';
1276
+ //this will be appended on to the rest of the query for each dir
1277
+ $epquery = '&' . $endpoint[2] . '=';
1278
+ $ep_query_append[$epmatch] = array ( $endpoint[0], $epquery );
1279
+ }
1280
+ }
1281
+
1282
+ //get everything up to the first rewrite tag
1283
+ $front = substr($permalink_structure, 0, strpos($permalink_structure, '%'));
1284
+ //build an array of the tags (note that said array ends up being in $tokens[0])
1285
+ preg_match_all('/%.+?%/', $permalink_structure, $tokens);
1286
+
1287
+ $num_tokens = count($tokens[0]);
1288
+
1289
+ $index = $this->index; //probably 'index.php'
1290
+ $feedindex = $index;
1291
+ $trackbackindex = $index;
1292
+ //build a list from the rewritecode and queryreplace arrays, that will look something like
1293
+ //tagname=$matches[i] where i is the current $i
1294
+ $queries = array();
1295
+ for ( $i = 0; $i < $num_tokens; ++$i ) {
1296
+ if ( 0 < $i )
1297
+ $queries[$i] = $queries[$i - 1] . '&';
1298
+ else
1299
+ $queries[$i] = '';
1300
+
1301
+ $query_token = str_replace($this->rewritecode, $this->queryreplace, $tokens[0][$i]) . $this->preg_index($i+1);
1302
+ $queries[$i] .= $query_token;
1303
+ }
1304
+
1305
+ //get the structure, minus any cruft (stuff that isn't tags) at the front
1306
+ $structure = $permalink_structure;
1307
+ if ( $front != '/' )
1308
+ $structure = str_replace($front, '', $structure);
1309
+
1310
+ //create a list of dirs to walk over, making rewrite rules for each level
1311
+ //so for example, a $structure of /%year%/%monthnum%/%postname% would create
1312
+ //rewrite rules for /%year%/, /%year%/%monthnum%/ and /%year%/%monthnum%/%postname%
1313
+ $structure = trim($structure, '/');
1314
+ $dirs = $walk_dirs ? explode('/', $structure) : array( $structure );
1315
+ $num_dirs = count($dirs);
1316
+
1317
+ //strip slashes from the front of $front
1318
+ $front = preg_replace('|^/+|', '', $front);
1319
+
1320
+ //the main workhorse loop
1321
+ $post_rewrite = array();
1322
+ $struct = $front;
1323
+ for ( $j = 0; $j < $num_dirs; ++$j ) {
1324
+ //get the struct for this dir, and trim slashes off the front
1325
+ $struct .= $dirs[$j] . '/'; //accumulate. see comment near explode('/', $structure) above
1326
+ $struct = ltrim($struct, '/');
1327
+
1328
+ //replace tags with regexes
1329
+ $match = str_replace($this->rewritecode, $this->rewritereplace, $struct);
1330
+
1331
+ //make a list of tags, and store how many there are in $num_toks
1332
+ $num_toks = preg_match_all('/%.+?%/', $struct, $toks);
1333
+
1334
+ //get the 'tagname=$matches[i]'
1335
+ $query = ( ! empty( $num_toks ) && isset( $queries[$num_toks - 1] ) ) ? $queries[$num_toks - 1] : '';
1336
+
1337
+ //set up $ep_mask_specific which is used to match more specific URL types
1338
+ switch ( $dirs[$j] ) {
1339
+ case '%year%':
1340
+ $ep_mask_specific = EP_YEAR;
1341
+ break;
1342
+ case '%monthnum%':
1343
+ $ep_mask_specific = EP_MONTH;
1344
+ break;
1345
+ case '%day%':
1346
+ $ep_mask_specific = EP_DAY;
1347
+ break;
1348
+ default:
1349
+ $ep_mask_specific = EP_NONE;
1350
+ }
1351
+
1352
+ //create query for /page/xx
1353
+ $pagematch = $match . $pageregex;
1354
+ $pagequery = $index . '?' . $query . '&paged=' . $this->preg_index($num_toks + 1);
1355
+
1356
+ //create query for /comment-page-xx
1357
+ $commentmatch = $match . $commentregex;
1358
+ $commentquery = $index . '?' . $query . '&cpage=' . $this->preg_index($num_toks + 1);
1359
+
1360
+ if ( get_option('page_on_front') ) {
1361
+ //create query for Root /comment-page-xx
1362
+ $rootcommentmatch = $match . $commentregex;
1363
+ $rootcommentquery = $index . '?' . $query . '&page_id=' . get_option('page_on_front') . '&cpage=' . $this->preg_index($num_toks + 1);
1364
+ }
1365
+
1366
+ //create query for /feed/(feed|atom|rss|rss2|rdf)
1367
+ $feedmatch = $match . $feedregex;
1368
+ $feedquery = $feedindex . '?' . $query . '&feed=' . $this->preg_index($num_toks + 1);
1369
+
1370
+ //create query for /(feed|atom|rss|rss2|rdf) (see comment near creation of $feedregex)
1371
+ $feedmatch2 = $match . $feedregex2;
1372
+ $feedquery2 = $feedindex . '?' . $query . '&feed=' . $this->preg_index($num_toks + 1);
1373
+
1374
+ //if asked to, turn the feed queries into comment feed ones
1375
+ if ( $forcomments ) {
1376
+ $feedquery .= '&withcomments=1';
1377
+ $feedquery2 .= '&withcomments=1';
1378
+ }
1379
+
1380
+ //start creating the array of rewrites for this dir
1381
+ $rewrite = array();
1382
+ if ( $feed ) //...adding on /feed/ regexes => queries
1383
+ $rewrite = array($feedmatch => $feedquery, $feedmatch2 => $feedquery2);
1384
+ if ( $paged ) //...and /page/xx ones
1385
+ $rewrite = array_merge($rewrite, array($pagematch => $pagequery));
1386
+
1387
+ //only on pages with comments add ../comment-page-xx/
1388
+ if ( EP_PAGES & $ep_mask || EP_PERMALINK & $ep_mask ) {
1389
+ $rewrite = array_merge($rewrite, array($commentmatch => $commentquery));
1390
+ } elseif ( EP_ROOT & $ep_mask && get_option('page_on_front') ) {
1391
+ $rewrite = array_merge($rewrite, array($rootcommentmatch => $rootcommentquery));
1392
+ }
1393
+ //do endpoints
1394
+ if ( $endpoints ) {
1395
+ foreach ( (array) $ep_query_append as $regex => $ep) {
1396
+ //add the endpoints on if the mask fits
1397
+ if ( $ep[0] & $ep_mask || $ep[0] & $ep_mask_specific )
1398
+ $rewrite[$match . $regex] = $index . '?' . $query . $ep[1] . $this->preg_index($num_toks + 2);
1399
+ }
1400
+ }
1401
+
1402
+ //if we've got some tags in this dir
1403
+ if ( $num_toks ) {
1404
+ $post = false;
1405
+ $page = false;
1406
+
1407
+ //check to see if this dir is permalink-level: i.e. the structure specifies an
1408
+ //individual post. Do this by checking it contains at least one of 1) post name,
1409
+ //2) post ID, 3) page name, 4) timestamp (year, month, day, hour, second and
1410
+ //minute all present). Set these flags now as we need them for the endpoints.
1411
+ if ( strpos($struct, '%postname%') !== false
1412
+ || strpos($struct, '%post_id%') !== false
1413
+ || strpos($struct, '%pagename%') !== false
1414
+ || (strpos($struct, '%year%') !== false && strpos($struct, '%monthnum%') !== false && strpos($struct, '%day%') !== false && strpos($struct, '%hour%') !== false && strpos($struct, '%minute%') !== false && strpos($struct, '%second%') !== false)
1415
+ ) {
1416
+ $post = true;
1417
+ if ( strpos($struct, '%pagename%') !== false )
1418
+ $page = true;
1419
+ }
1420
+
1421
+ if ( ! $post ) {
1422
+ // For custom post types, we need to add on endpoints as well.
1423
+ foreach ( get_post_types( array('_builtin' => false ) ) as $ptype ) {
1424
+ if ( strpos($struct, "%$ptype%") !== false ) {
1425
+ $post = true;
1426
+ $page = is_post_type_hierarchical( $ptype ); // This is for page style attachment url's
1427
+ break;
1428
+ }
1429
+ }
1430
+ }
1431
+
1432
+ //if we're creating rules for a permalink, do all the endpoints like attachments etc
1433
+ if ( $post ) {
1434
+ //create query and regex for trackback
1435
+ $trackbackmatch = $match . $trackbackregex;
1436
+ $trackbackquery = $trackbackindex . '?' . $query . '&tb=1';
1437
+ //trim slashes from the end of the regex for this dir
1438
+ $match = rtrim($match, '/');
1439
+ //get rid of brackets
1440
+ $submatchbase = str_replace( array('(', ')'), '', $match);
1441
+
1442
+ //add a rule for at attachments, which take the form of <permalink>/some-text
1443
+ $sub1 = $submatchbase . '/([^/]+)/';
1444
+ $sub1tb = $sub1 . $trackbackregex; //add trackback regex <permalink>/trackback/...
1445
+ $sub1feed = $sub1 . $feedregex; //and <permalink>/feed/(atom|...)
1446
+ $sub1feed2 = $sub1 . $feedregex2; //and <permalink>/(feed|atom...)
1447
+ $sub1comment = $sub1 . $commentregex; //and <permalink>/comment-page-xx
1448
+
1449
+ //add another rule to match attachments in the explicit form:
1450
+ //<permalink>/attachment/some-text
1451
+ $sub2 = $submatchbase . '/attachment/([^/]+)/';
1452
+ $sub2tb = $sub2 . $trackbackregex; //and add trackbacks <permalink>/attachment/trackback
1453
+ $sub2feed = $sub2 . $feedregex; //feeds, <permalink>/attachment/feed/(atom|...)
1454
+ $sub2feed2 = $sub2 . $feedregex2; //and feeds again on to this <permalink>/attachment/(feed|atom...)
1455
+ $sub2comment = $sub2 . $commentregex; //and <permalink>/comment-page-xx
1456
+
1457
+ //create queries for these extra tag-ons we've just dealt with
1458
+ $subquery = $index . '?attachment=' . $this->preg_index(1);
1459
+ $subtbquery = $subquery . '&tb=1';
1460
+ $subfeedquery = $subquery . '&feed=' . $this->preg_index(2);
1461
+ $subcommentquery = $subquery . '&cpage=' . $this->preg_index(2);
1462
+
1463
+ //do endpoints for attachments
1464
+ if ( !empty($endpoints) ) {
1465
+ foreach ( (array) $ep_query_append as $regex => $ep ) {
1466
+ if ( $ep[0] & EP_ATTACHMENT ) {
1467
+ $rewrite[$sub1 . $regex] = $subquery . $ep[1] . $this->preg_index(3);
1468
+ $rewrite[$sub2 . $regex] = $subquery . $ep[1] . $this->preg_index(3);
1469
+ }
1470
+ }
1471
+ }
1472
+
1473
+ //now we've finished with endpoints, finish off the $sub1 and $sub2 matches
1474
+ //add a ? as we don't have to match that last slash, and finally a $ so we
1475
+ //match to the end of the URL
1476
+ $sub1 .= '?$';
1477
+ $sub2 .= '?$';
1478
+
1479
+ //post pagination, e.g. <permalink>/2/
1480
+ $match = $match . '(/[0-9]+)?/?$';
1481
+ $query = $index . '?' . $query . '&page=' . $this->preg_index($num_toks + 1);
1482
+ } else { //not matching a permalink so this is a lot simpler
1483
+ //close the match and finalise the query
1484
+ $match .= '?$';
1485
+ $query = $index . '?' . $query;
1486
+ }
1487
+
1488
+ //create the final array for this dir by joining the $rewrite array (which currently
1489
+ //only contains rules/queries for trackback, pages etc) to the main regex/query for
1490
+ //this dir
1491
+ $rewrite = array_merge($rewrite, array($match => $query));
1492
+
1493
+ //if we're matching a permalink, add those extras (attachments etc) on
1494
+ if ( $post ) {
1495
+ //add trackback
1496
+ $rewrite = array_merge(array($trackbackmatch => $trackbackquery), $rewrite);
1497
+
1498
+ //add regexes/queries for attachments, attachment trackbacks and so on
1499
+ if ( ! $page ) //require <permalink>/attachment/stuff form for pages because of confusion with subpages
1500
+ $rewrite = array_merge($rewrite, array($sub1 => $subquery, $sub1tb => $subtbquery, $sub1feed => $subfeedquery, $sub1feed2 => $subfeedquery, $sub1comment => $subcommentquery));
1501
+ $rewrite = array_merge(array($sub2 => $subquery, $sub2tb => $subtbquery, $sub2feed => $subfeedquery, $sub2feed2 => $subfeedquery, $sub2comment => $subcommentquery), $rewrite);
1502
+ }
1503
+ } //if($num_toks)
1504
+ //add the rules for this dir to the accumulating $post_rewrite
1505
+ $post_rewrite = array_merge($rewrite, $post_rewrite);
1506
+ } //foreach ($dir)
1507
+ return $post_rewrite; //the finished rules. phew!
1508
+ }
1509
+
1510
+ /**
1511
+ * Generate Rewrite rules with permalink structure and walking directory only.
1512
+ *
1513
+ * Shorten version of {@link WP_Rewrite::generate_rewrite_rules()} that
1514
+ * allows for shorter list of parameters. See the method for longer
1515
+ * description of what generating rewrite rules does.
1516
+ *
1517
+ * @uses WP_Rewrite::generate_rewrite_rules() See for long description and rest of parameters.
1518
+ * @since 1.5.0
1519
+ * @access public
1520
+ *
1521
+ * @param string $permalink_structure The permalink structure to generate rules.
1522
+ * @param bool $walk_dirs Optional, default is false. Whether to create list of directories to walk over.
1523
+ * @return array
1524
+ */
1525
+ public function generate_rewrite_rule($permalink_structure, $walk_dirs = false) {
1526
+ return $this->generate_rewrite_rules($permalink_structure, EP_NONE, false, false, false, $walk_dirs);
1527
+ }
1528
+
1529
+ /**
1530
+ * Construct rewrite matches and queries from permalink structure.
1531
+ *
1532
+ * Runs the action 'generate_rewrite_rules' with the parameter that is an
1533
+ * reference to the current WP_Rewrite instance to further manipulate the
1534
+ * permalink structures and rewrite rules. Runs the 'rewrite_rules_array'
1535
+ * filter on the full rewrite rule array.
1536
+ *
1537
+ * There are two ways to manipulate the rewrite rules, one by hooking into
1538
+ * the 'generate_rewrite_rules' action and gaining full control of the
1539
+ * object or just manipulating the rewrite rule array before it is passed
1540
+ * from the function.
1541
+ *
1542
+ * @since 1.5.0
1543
+ * @access public
1544
+ *
1545
+ * @return array An associate array of matches and queries.
1546
+ */
1547
+ public function rewrite_rules() {
1548
+ $rewrite = array();
1549
+
1550
+ if ( empty($this->permalink_structure) )
1551
+ return $rewrite;
1552
+
1553
+ // robots.txt -only if installed at the root
1554
+ $home_path = parse_url( home_url() );
1555
+ $robots_rewrite = ( empty( $home_path['path'] ) || '/' == $home_path['path'] ) ? array( 'robots\.txt$' => $this->index . '?robots=1' ) : array();
1556
+
1557
+ // Old feed and service files
1558
+ $deprecated_files = array(
1559
+ '.*wp-(atom|rdf|rss|rss2|feed|commentsrss2)\.php$' => $this->index . '?feed=old',
1560
+ '.*wp-app\.php(/.*)?$' => $this->index . '?error=403',
1561
+ );
1562
+
1563
+ // Registration rules
1564
+ $registration_pages = array();
1565
+ if ( is_multisite() && is_main_site() ) {
1566
+ $registration_pages['.*wp-signup.php$'] = $this->index . '?signup=true';
1567
+ $registration_pages['.*wp-activate.php$'] = $this->index . '?activate=true';
1568
+ }
1569
+ $registration_pages['.*wp-register.php$'] = $this->index . '?register=true'; // Deprecated
1570
+
1571
+ // Post rewrite rules.
1572
+ $post_rewrite = $this->generate_rewrite_rules( $this->permalink_structure, EP_PERMALINK );
1573
+
1574
+ /**
1575
+ * Filter rewrite rules used for "post" archives.
1576
+ *
1577
+ * @since 1.5.0
1578
+ *
1579
+ * @param array $post_rewrite The rewrite rules for posts.
1580
+ */
1581
+ $post_rewrite = apply_filters( 'post_rewrite_rules', $post_rewrite );
1582
+
1583
+ // Date rewrite rules.
1584
+ $date_rewrite = $this->generate_rewrite_rules($this->get_date_permastruct(), EP_DATE);
1585
+
1586
+ /**
1587
+ * Filter rewrite rules used for date archives.
1588
+ *
1589
+ * Likely date archives would include /yyyy/, /yyyy/mm/, and /yyyy/mm/dd/.
1590
+ *
1591
+ * @since 1.5.0
1592
+ *
1593
+ * @param array $date_rewrite The rewrite rules for date archives.
1594
+ */
1595
+ $date_rewrite = apply_filters( 'date_rewrite_rules', $date_rewrite );
1596
+
1597
+ // Root-level rewrite rules.
1598
+ $root_rewrite = $this->generate_rewrite_rules($this->root . '/', EP_ROOT);
1599
+
1600
+ /**
1601
+ * Filter rewrite rules used for root-level archives.
1602
+ *
1603
+ * Likely root-level archives would include pagination rules for the homepage
1604
+ * as well as site-wide post feeds (e.g. /feed/, and /feed/atom/).
1605
+ *
1606
+ * @since 1.5.0
1607
+ *
1608
+ * @param array $root_rewrite The root-level rewrite rules.
1609
+ */
1610
+ $root_rewrite = apply_filters( 'root_rewrite_rules', $root_rewrite );
1611
+
1612
+ // Comments rewrite rules.
1613
+ $comments_rewrite = $this->generate_rewrite_rules($this->root . $this->comments_base, EP_COMMENTS, false, true, true, false);
1614
+
1615
+ /**
1616
+ * Filter rewrite rules used for comment feed archives.
1617
+ *
1618
+ * Likely comments feed archives include /comments/feed/, and /comments/feed/atom/.
1619
+ *
1620
+ * @since 1.5.0
1621
+ *
1622
+ * @param array $comments_rewrite The rewrite rules for the site-wide comments feeds.
1623
+ */
1624
+ $comments_rewrite = apply_filters( 'comments_rewrite_rules', $comments_rewrite );
1625
+
1626
+ // Search rewrite rules.
1627
+ $search_structure = $this->get_search_permastruct();
1628
+ $search_rewrite = $this->generate_rewrite_rules($search_structure, EP_SEARCH);
1629
+
1630
+ /**
1631
+ * Filter rewrite rules used for search archives.
1632
+ *
1633
+ * Likely search-related archives include /search/search+query/ as well as
1634
+ * pagination and feed paths for a search.
1635
+ *
1636
+ * @since 1.5.0
1637
+ *
1638
+ * @param array $search_rewrite The rewrite rules for search queries.
1639
+ */
1640
+ $search_rewrite = apply_filters( 'search_rewrite_rules', $search_rewrite );
1641
+
1642
+ // Author rewrite rules.
1643
+ $author_rewrite = $this->generate_rewrite_rules($this->get_author_permastruct(), EP_AUTHORS);
1644
+
1645
+ /**
1646
+ * Filter rewrite rules used for author archives.
1647
+ *
1648
+ * Likely author archives would include /author/author-name/, as well as
1649
+ * pagination and feed paths for author archives.
1650
+ *
1651
+ * @since 1.5.0
1652
+ *
1653
+ * @param array $author_rewrite The rewrite rules for author archives.
1654
+ */
1655
+ $author_rewrite = apply_filters( 'author_rewrite_rules', $author_rewrite );
1656
+
1657
+ // Pages rewrite rules.
1658
+ $page_rewrite = $this->page_rewrite_rules();
1659
+
1660
+ /**
1661
+ * Filter rewrite rules used for "page" post type archives.
1662
+ *
1663
+ * @since 1.5.0
1664
+ *
1665
+ * @param array $page_rewrite The rewrite rules for the "page" post type.
1666
+ */
1667
+ $page_rewrite = apply_filters( 'page_rewrite_rules', $page_rewrite );
1668
+
1669
+ // Extra permastructs.
1670
+ foreach ( $this->extra_permastructs as $permastructname => $struct ) {
1671
+ if ( is_array( $struct ) ) {
1672
+ if ( count( $struct ) == 2 )
1673
+ $rules = $this->generate_rewrite_rules( $struct[0], $struct[1] );
1674
+ else
1675
+ $rules = $this->generate_rewrite_rules( $struct['struct'], $struct['ep_mask'], $struct['paged'], $struct['feed'], $struct['forcomments'], $struct['walk_dirs'], $struct['endpoints'] );
1676
+ } else {
1677
+ $rules = $this->generate_rewrite_rules( $struct );
1678
+ }
1679
+
1680
+ /**
1681
+ * Filter rewrite rules used for individual permastructs.
1682
+ *
1683
+ * The dynamic portion of the hook name, `$permastructname`, refers
1684
+ * to the name of the registered permastruct, e.g. 'post_tag' (tags),
1685
+ * 'category' (categories), etc.
1686
+ *
1687
+ * @since 3.1.0
1688
+ *
1689
+ * @param array $rules The rewrite rules generated for the current permastruct.
1690
+ */
1691
+ $rules = apply_filters( $permastructname . '_rewrite_rules', $rules );
1692
+ if ( 'post_tag' == $permastructname ) {
1693
+
1694
+ /**
1695
+ * Filter rewrite rules used specifically for Tags.
1696
+ *
1697
+ * @since 2.3.0
1698
+ * @deprecated 3.1.0 Use 'post_tag_rewrite_rules' instead
1699
+ *
1700
+ * @param array $rules The rewrite rules generated for tags.
1701
+ */
1702
+ $rules = apply_filters( 'tag_rewrite_rules', $rules );
1703
+ }
1704
+
1705
+ $this->extra_rules_top = array_merge($this->extra_rules_top, $rules);
1706
+ }
1707
+
1708
+ // Put them together.
1709
+ if ( $this->use_verbose_page_rules )
1710
+ $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $deprecated_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite, $author_rewrite, $date_rewrite, $page_rewrite, $post_rewrite, $this->extra_rules);
1711
+ else
1712
+ $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $deprecated_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite, $author_rewrite, $date_rewrite, $post_rewrite, $page_rewrite, $this->extra_rules);
1713
+
1714
+ /**
1715
+ * Fires after the rewrite rules are generated.
1716
+ *
1717
+ * @since 1.5.0
1718
+ *
1719
+ * @param WP_Rewrite $this Current WP_Rewrite instance, passed by reference.
1720
+ */
1721
+ do_action_ref_array( 'generate_rewrite_rules', array( &$this ) );
1722
+
1723
+ /**
1724
+ * Filter the full set of generated rewrite rules.
1725
+ *
1726
+ * @since 1.5.0
1727
+ *
1728
+ * @param array $this->rules The compiled array of rewrite rules.
1729
+ */
1730
+ $this->rules = apply_filters( 'rewrite_rules_array', $this->rules );
1731
+
1732
+ return $this->rules;
1733
+ }
1734
+
1735
+ /**
1736
+ * Retrieve the rewrite rules.
1737
+ *
1738
+ * The difference between this method and {@link
1739
+ * WP_Rewrite::rewrite_rules()} is that this method stores the rewrite rules
1740
+ * in the 'rewrite_rules' option and retrieves it. This prevents having to
1741
+ * process all of the permalinks to get the rewrite rules in the form of
1742
+ * caching.
1743
+ *
1744
+ * @since 1.5.0
1745
+ * @access public
1746
+ *
1747
+ * @return array Rewrite rules.
1748
+ */
1749
+ public function wp_rewrite_rules() {
1750
+ $this->rules = get_option('rewrite_rules');
1751
+ if ( empty($this->rules) ) {
1752
+ $this->matches = 'matches';
1753
+ $this->rewrite_rules();
1754
+ update_option('rewrite_rules', $this->rules);
1755
+ }
1756
+
1757
+ return $this->rules;
1758
+ }
1759
+
1760
+ /**
1761
+ * Retrieve mod_rewrite formatted rewrite rules to write to .htaccess.
1762
+ *
1763
+ * Does not actually write to the .htaccess file, but creates the rules for
1764
+ * the process that will.
1765
+ *
1766
+ * Will add the non_wp_rules property rules to the .htaccess file before
1767
+ * the WordPress rewrite rules one.
1768
+ *
1769
+ * @since 1.5.0
1770
+ * @access public
1771
+ *
1772
+ * @return string
1773
+ */
1774
+ public function mod_rewrite_rules() {
1775
+ if ( ! $this->using_permalinks() )
1776
+ return '';
1777
+
1778
+ $site_root = parse_url( site_url() );
1779
+ if ( isset( $site_root['path'] ) )
1780
+ $site_root = trailingslashit($site_root['path']);
1781
+
1782
+ $home_root = parse_url(home_url());
1783
+ if ( isset( $home_root['path'] ) )
1784
+ $home_root = trailingslashit($home_root['path']);
1785
+ else
1786
+ $home_root = '/';
1787
+
1788
+ $rules = "<IfModule mod_rewrite.c>\n";
1789
+ $rules .= "RewriteEngine On\n";
1790
+ $rules .= "RewriteBase $home_root\n";
1791
+ $rules .= "RewriteRule ^index\.php$ - [L]\n"; // Prevent -f checks on index.php.
1792
+
1793
+ //add in the rules that don't redirect to WP's index.php (and thus shouldn't be handled by WP at all)
1794
+ foreach ( (array) $this->non_wp_rules as $match => $query) {
1795
+ // Apache 1.3 does not support the reluctant (non-greedy) modifier.
1796
+ $match = str_replace('.+?', '.+', $match);
1797
+
1798
+ // If the match is unanchored and greedy, prepend rewrite conditions
1799
+ // to avoid infinite redirects and eclipsing of real files.
1800
+ //if ($match == '(.+)/?$' || $match == '([^/]+)/?$' ) {
1801
+ //nada.
1802
+ //}
1803
+
1804
+ $rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n";
1805
+ }
1806
+
1807
+ if ( $this->use_verbose_rules ) {
1808
+ $this->matches = '';
1809
+ $rewrite = $this->rewrite_rules();
1810
+ $num_rules = count($rewrite);
1811
+ $rules .= "RewriteCond %{REQUEST_FILENAME} -f [OR]\n" .
1812
+ "RewriteCond %{REQUEST_FILENAME} -d\n" .
1813
+ "RewriteRule ^.*$ - [S=$num_rules]\n";
1814
+
1815
+ foreach ( (array) $rewrite as $match => $query) {
1816
+ // Apache 1.3 does not support the reluctant (non-greedy) modifier.
1817
+ $match = str_replace('.+?', '.+', $match);
1818
+
1819
+ // If the match is unanchored and greedy, prepend rewrite conditions
1820
+ // to avoid infinite redirects and eclipsing of real files.
1821
+ //if ($match == '(.+)/?$' || $match == '([^/]+)/?$' ) {
1822
+ //nada.
1823
+ //}
1824
+
1825
+ if ( strpos($query, $this->index) !== false )
1826
+ $rules .= 'RewriteRule ^' . $match . ' ' . $home_root . $query . " [QSA,L]\n";
1827
+ else
1828
+ $rules .= 'RewriteRule ^' . $match . ' ' . $site_root . $query . " [QSA,L]\n";
1829
+ }
1830
+ } else {
1831
+ $rules .= "RewriteCond %{REQUEST_FILENAME} !-f\n" .
1832
+ "RewriteCond %{REQUEST_FILENAME} !-d\n" .
1833
+ "RewriteRule . {$home_root}{$this->index} [L]\n";
1834
+ }
1835
+
1836
+ $rules .= "</IfModule>\n";
1837
+
1838
+ /**
1839
+ *
1840
+ * Filter the list of rewrite rules formatted for output to an .htaccess file.
1841
+ *
1842
+ * @since 1.5.0
1843
+ *
1844
+ * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess.
1845
+ */
1846
+ $rules = apply_filters( 'mod_rewrite_rules', $rules );
1847
+
1848
+ /**
1849
+ * Filter the list of rewrite rules formatted for output to an .htaccess file.
1850
+ *
1851
+ * @since 1.5.0
1852
+ * @deprecated 1.5.0 Use the mod_rewrite_rules filter instead.
1853
+ *
1854
+ * @param string $rules mod_rewrite Rewrite rules formatted for .htaccess.
1855
+ */
1856
+ $rules = apply_filters( 'rewrite_rules', $rules ); // Deprecated
1857
+
1858
+ return $rules;
1859
+ }
1860
+
1861
+ /**
1862
+ * Retrieve IIS7 URL Rewrite formatted rewrite rules to write to web.config file.
1863
+ *
1864
+ * Does not actually write to the web.config file, but creates the rules for
1865
+ * the process that will.
1866
+ *
1867
+ * @since 2.8.0
1868
+ * @access public
1869
+ *
1870
+ * @return string
1871
+ */
1872
+ public function iis7_url_rewrite_rules( $add_parent_tags = false ) {
1873
+
1874
+ if ( ! $this->using_permalinks() )
1875
+ return '';
1876
+ $rules = '';
1877
+ if ( $add_parent_tags ) {
1878
+ $rules .= '<configuration>
1879
+ <system.webServer>
1880
+ <rewrite>
1881
+ <rules>';
1882
+ }
1883
+
1884
+ $rules .= '
1885
+ <rule name="wordpress" patternSyntax="Wildcard">
1886
+ <match url="*" />
1887
+ <conditions>
1888
+ <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
1889
+ <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
1890
+ </conditions>
1891
+ <action type="Rewrite" url="index.php" />
1892
+ </rule>';
1893
+
1894
+ if ( $add_parent_tags ) {
1895
+ $rules .= '
1896
+ </rules>
1897
+ </rewrite>
1898
+ </system.webServer>
1899
+ </configuration>';
1900
+ }
1901
+
1902
+ /**
1903
+ * Filter the list of rewrite rules formatted for output to a web.config.
1904
+ *
1905
+ * @since 2.8.0
1906
+ *
1907
+ * @param string $rules Rewrite rules formatted for IIS web.config.
1908
+ */
1909
+ $rules = apply_filters( 'iis7_url_rewrite_rules', $rules );
1910
+
1911
+ return $rules;
1912
+ }
1913
+
1914
+ /**
1915
+ * Add a straight rewrite rule.
1916
+ *
1917
+ * Any value in the $after parameter that isn't 'bottom' will be placed at
1918
+ * the top of the rules.
1919
+ *
1920
+ * @since 2.1.0
1921
+ * @access public
1922
+ *
1923
+ * @param string $regex Regular expression to match against request.
1924
+ * @param string $redirect URL regex redirects to when regex matches request.
1925
+ * @param string $after Optional, default is bottom. Location to place rule.
1926
+ */
1927
+ public function add_rule($regex, $redirect, $after = 'bottom') {
1928
+ //get everything up to the first ?
1929
+ $index = (strpos($redirect, '?') == false ? strlen($redirect) : strpos($redirect, '?'));
1930
+ $front = substr($redirect, 0, $index);
1931
+ if ( $front != $this->index ) { //it doesn't redirect to WP's index.php
1932
+ $this->add_external_rule($regex, $redirect);
1933
+ } else {
1934
+ if ( 'bottom' == $after)
1935
+ $this->extra_rules = array_merge($this->extra_rules, array($regex => $redirect));
1936
+ else
1937
+ $this->extra_rules_top = array_merge($this->extra_rules_top, array($regex => $redirect));
1938
+ //$this->extra_rules[$regex] = $redirect;
1939
+ }
1940
+ }
1941
+
1942
+ /**
1943
+ * Add a rule that doesn't redirect to index.php.
1944
+ *
1945
+ * Can redirect to any place.
1946
+ *
1947
+ * @since 2.1.0
1948
+ * @access public
1949
+ *
1950
+ * @param string $regex Regular expression to match against request.
1951
+ * @param string $redirect URL regex redirects to when regex matches request.
1952
+ */
1953
+ public function add_external_rule($regex, $redirect) {
1954
+ $this->non_wp_rules[$regex] = $redirect;
1955
+ }
1956
+
1957
+ /**
1958
+ * Add an endpoint, like /trackback/.
1959
+ *
1960
+ * @since 2.1.0
1961
+ * @since 3.9.0 $query_var parameter added.
1962
+ * @access public
1963
+ *
1964
+ * @see add_rewrite_endpoint() for full documentation.
1965
+ * @uses WP::add_query_var()
1966
+ *
1967
+ * @param string $name Name of the endpoint.
1968
+ * @param int $places Endpoint mask describing the places the endpoint should be added.
1969
+ * @param string $query_var Name of the corresponding query variable. Default is value of $name.
1970
+ */
1971
+ public function add_endpoint( $name, $places, $query_var = null ) {
1972
+ global $wp;
1973
+ if ( null === $query_var ) {
1974
+ $query_var = $name;
1975
+ }
1976
+ $this->endpoints[] = array( $places, $name, $query_var );
1977
+ $wp->add_query_var( $query_var );
1978
+ }
1979
+
1980
+ /**
1981
+ * Add a new permalink structure.
1982
+ *
1983
+ * A permalink structure (permastruct) is an abstract definition of a set of rewrite rules; it
1984
+ * is an easy way of expressing a set of regular expressions that rewrite to a set of query strings.
1985
+ * The new permastruct is added to the {@link WP_Rewrite::$extra_permastructs} array. When the
1986
+ * rewrite rules are built by {@link WP_Rewrite::rewrite_rules()} all of these extra permastructs
1987
+ * are passed to {@link WP_Rewrite::generate_rewrite_rules()} which transforms them into the
1988
+ * regular expressions that many love to hate.
1989
+ *
1990
+ * The $args parameter gives you control over how {@link WP_Rewrite::generate_rewrite_rules()}
1991
+ * works on the new permastruct.
1992
+ *
1993
+ * @since 2.5.0
1994
+ * @access public
1995
+ *
1996
+ * @param string $name Name for permalink structure.
1997
+ * @param string $struct Permalink structure (e.g. category/%category%)
1998
+ * @param array $args Optional configuration for building the rules from the permalink structure:
1999
+ * - with_front (bool) - Should the structure be prepended with WP_Rewrite::$front? Default is true.
2000
+ * - ep_mask (int) - Endpoint mask defining what endpoints are added to the structure. Default is EP_NONE.
2001
+ * - paged (bool) - Should archive pagination rules be added for the structure? Default is true.
2002
+ * - feed (bool) - Should feed rewrite rules be added for the structure? Default is true.
2003
+ * - forcomments (bool) - Should the feed rules be a query for a comments feed? Default is false.
2004
+ * - walk_dirs (bool) - Should the 'directories' making up the structure be walked over and rewrite
2005
+ * rules built for each in turn? Default is true.
2006
+ * - endpoints (bool) - Should endpoints be applied to the generated rewrite rules? Default is true.
2007
+ */
2008
+ public function add_permastruct( $name, $struct, $args = array() ) {
2009
+ // backwards compatibility for the old parameters: $with_front and $ep_mask
2010
+ if ( ! is_array( $args ) )
2011
+ $args = array( 'with_front' => $args );
2012
+ if ( func_num_args() == 4 )
2013
+ $args['ep_mask'] = func_get_arg( 3 );
2014
+
2015
+ $defaults = array(
2016
+ 'with_front' => true,
2017
+ 'ep_mask' => EP_NONE,
2018
+ 'paged' => true,
2019
+ 'feed' => true,
2020
+ 'forcomments' => false,
2021
+ 'walk_dirs' => true,
2022
+ 'endpoints' => true,
2023
+ );
2024
+ $args = array_intersect_key( $args, $defaults );
2025
+ $args = wp_parse_args( $args, $defaults );
2026
+
2027
+ if ( $args['with_front'] )
2028
+ $struct = $this->front . $struct;
2029
+ else
2030
+ $struct = $this->root . $struct;
2031
+ $args['struct'] = $struct;
2032
+
2033
+ $this->extra_permastructs[ $name ] = $args;
2034
+ }
2035
+
2036
+ /**
2037
+ * Remove rewrite rules and then recreate rewrite rules.
2038
+ *
2039
+ * Calls {@link WP_Rewrite::wp_rewrite_rules()} after removing the
2040
+ * 'rewrite_rules' option. If the function named 'save_mod_rewrite_rules'
2041
+ * exists, it will be called.
2042
+ *
2043
+ * @since 2.0.1
2044
+ * @access public
2045
+ * @param bool $hard Whether to update .htaccess (hard flush) or just update rewrite_rules option (soft flush). Default is true (hard).
2046
+ */
2047
+ public function flush_rules( $hard = true ) {
2048
+ static $do_hard_later;
2049
+
2050
+ // Prevent this action from running before everyone has registered their rewrites
2051
+ if ( ! did_action( 'wp_loaded' ) ) {
2052
+ add_action( 'wp_loaded', array( $this, 'flush_rules' ) );
2053
+ $do_hard_later = ( isset( $do_hard_later ) ) ? $do_hard_later || $hard : $hard;
2054
+ return;
2055
+ }
2056
+
2057
+ if ( isset( $do_hard_later ) ) {
2058
+ $hard = $do_hard_later;
2059
+ unset( $do_hard_later );
2060
+ }
2061
+
2062
+ delete_option('rewrite_rules');
2063
+ $this->wp_rewrite_rules();
2064
+ /**
2065
+ * Filter whether a "hard" rewrite rule flush should be performed when requested.
2066
+ *
2067
+ * A "hard" flush updates .htaccess (Apache) or web.config (IIS).
2068
+ *
2069
+ * @since 3.7.0
2070
+ *
2071
+ * @param bool $hard Whether to flush rewrite rules "hard". Default true.
2072
+ */
2073
+ if ( ! $hard || ! apply_filters( 'flush_rewrite_rules_hard', true ) ) {
2074
+ return;
2075
+ }
2076
+ if ( function_exists( 'save_mod_rewrite_rules' ) )
2077
+ save_mod_rewrite_rules();
2078
+ if ( function_exists( 'iis7_save_url_rewrite_rules' ) )
2079
+ iis7_save_url_rewrite_rules();
2080
+ }
2081
+
2082
+ /**
2083
+ * Sets up the object's properties.
2084
+ *
2085
+ * The 'use_verbose_page_rules' object property will be set to true if the
2086
+ * permalink structure begins with one of the following: '%postname%', '%category%',
2087
+ * '%tag%', or '%author%'.
2088
+ *
2089
+ * @since 1.5.0
2090
+ * @access public
2091
+ */
2092
+ public function init() {
2093
+ $this->extra_rules = $this->non_wp_rules = $this->endpoints = array();
2094
+ $this->permalink_structure = get_option('permalink_structure');
2095
+ $this->front = substr($this->permalink_structure, 0, strpos($this->permalink_structure, '%'));
2096
+ $this->root = '';
2097
+ if ( $this->using_index_permalinks() )
2098
+ $this->root = $this->index . '/';
2099
+ unset($this->author_structure);
2100
+ unset($this->date_structure);
2101
+ unset($this->page_structure);
2102
+ unset($this->search_structure);
2103
+ unset($this->feed_structure);
2104
+ unset($this->comment_feed_structure);
2105
+ $this->use_trailing_slashes = ( '/' == substr($this->permalink_structure, -1, 1) );
2106
+
2107
+ // Enable generic rules for pages if permalink structure doesn't begin with a wildcard.
2108
+ if ( preg_match("/^[^%]*%(?:postname|category|tag|author)%/", $this->permalink_structure) )
2109
+ $this->use_verbose_page_rules = true;
2110
+ else
2111
+ $this->use_verbose_page_rules = false;
2112
+ }
2113
+
2114
+ /**
2115
+ * Set the main permalink structure for the blog.
2116
+ *
2117
+ * Will update the 'permalink_structure' option, if there is a difference
2118
+ * between the current permalink structure and the parameter value. Calls
2119
+ * {@link WP_Rewrite::init()} after the option is updated.
2120
+ *
2121
+ * Fires the 'permalink_structure_changed' action once the init call has
2122
+ * processed passing the old and new values
2123
+ *
2124
+ * @since 1.5.0
2125
+ * @access public
2126
+ *
2127
+ * @param string $permalink_structure Permalink structure.
2128
+ */
2129
+ public function set_permalink_structure($permalink_structure) {
2130
+ if ( $permalink_structure != $this->permalink_structure ) {
2131
+ $old_permalink_structure = $this->permalink_structure;
2132
+ update_option('permalink_structure', $permalink_structure);
2133
+ $this->init();
2134
+
2135
+ /**
2136
+ * Fires after the permalink structure is updated.
2137
+ *
2138
+ * @since 2.8.0
2139
+ *
2140
+ * @param string $old_permalink_structure The previous permalink structure.
2141
+ * @param string $permalink_structure The new permalink structure.
2142
+ */
2143
+ do_action( 'permalink_structure_changed', $old_permalink_structure, $permalink_structure );
2144
+ }
2145
+ }
2146
+
2147
+ /**
2148
+ * Set the category base for the category permalink.
2149
+ *
2150
+ * Will update the 'category_base' option, if there is a difference between
2151
+ * the current category base and the parameter value. Calls
2152
+ * {@link WP_Rewrite::init()} after the option is updated.
2153
+ *
2154
+ * @since 1.5.0
2155
+ * @access public
2156
+ *
2157
+ * @param string $category_base Category permalink structure base.
2158
+ */
2159
+ public function set_category_base($category_base) {
2160
+ if ( $category_base != get_option('category_base') ) {
2161
+ update_option('category_base', $category_base);
2162
+ $this->init();
2163
+ }
2164
+ }
2165
+
2166
+ /**
2167
+ * Set the tag base for the tag permalink.
2168
+ *
2169
+ * Will update the 'tag_base' option, if there is a difference between the
2170
+ * current tag base and the parameter value. Calls
2171
+ * {@link WP_Rewrite::init()} after the option is updated.
2172
+ *
2173
+ * @since 2.3.0
2174
+ * @access public
2175
+ *
2176
+ * @param string $tag_base Tag permalink structure base.
2177
+ */
2178
+ public function set_tag_base( $tag_base ) {
2179
+ if ( $tag_base != get_option( 'tag_base') ) {
2180
+ update_option( 'tag_base', $tag_base );
2181
+ $this->init();
2182
+ }
2183
+ }
2184
+
2185
+ /**
2186
+ * Constructor - Calls init(), which runs setup.
2187
+ *
2188
+ * @since 1.5.0
2189
+ * @access public
2190
+ *
2191
+ */
2192
+ public function __construct() {
2193
+ $this->init();
2194
+ }
2195
+ }