Compare commits

..

9 Commits

Author SHA1 Message Date
Jacob Haddon
b38064eb69 moved arl_kottke_archives plugin into the archives.php file 2021-07-26 08:53:29 -04:00
Jacob Haddon
16c13dae1d comment functions updated to current 2010, now working 2021-07-26 08:43:56 -04:00
Jacob Haddon
3052a115a1 added in popdown menu with widgets and darkmode styling
Merge branch 'popmenu'
2020-12-21 17:06:16 -05:00
Jacob Haddon
6aa0c6e211 minor corrections 2020-12-19 19:44:05 -05:00
Jacob Haddon
7afd8eca76 updated styling for moblie, fixed classes and IDs for slidedown widget areas 2020-11-25 20:49:21 -05:00
Jacob Haddon
254db6f3bf added the sidebar php for the new widget area. lots to style now. 2020-11-19 21:16:02 -05:00
Jacob Haddon
23bb31595c updated with new widget functions. 2020-11-19 21:15:19 -05:00
Jacob Haddon
abc5cb369d updated menu configs and dark mode tweaks 2020-11-19 20:16:26 -05:00
Jacob Haddon
97cf9cb1a0 first additions for a pop down menu, rather than the new one at the top 2020-11-18 16:59:23 -05:00
5 changed files with 368 additions and 66 deletions

View File

@ -29,4 +29,72 @@ get_header(); ?>
<?php endwhile; // end of the loop. ?> <?php endwhile; // end of the loop. ?>
<?php get_footer(); ?> <?php get_footer();
function arl_kottke_archives($month_separator = ' ', $month_format = 'M')
{
/*
This function was originally a plugin, GPL2, information below:
Plugin Name: Kottke Style Archive
Version: 0.3
Plugin URI: http://www.lattimore.id.au/projects/wordpress/plugins/kottke-style-archives/
Author: Alistair Lattimore
Author URI: http://www.lattimore.id.au
Description: Displays an archive of posts in the same style to http://www.kottke.org/everfresh.
*/
global $wpdb;
$output = "";
$year = "";
$sql = "SELECT DATE_FORMAT(post_date, '%Y') AS Year, ";
$sql .= "DATE_FORMAT(post_date, '%m') AS Month ";
$sql .= "FROM $wpdb->posts ";
$sql .= "WHERE DATE_FORMAT(post_date, '%Y') <> '0000'";
$sql .= " AND post_status = 'publish'";
$sql .= " AND post_type = 'post' ";
$sql .= "GROUP BY DATE_FORMAT(post_date, '%Y'), DATE_FORMAT(post_date, '%m') ";
$sql .= "ORDER BY DATE_FORMAT(post_date, '%Y') DESC, DATE_FORMAT(post_date, '%m') ASC;";
$months = $wpdb->get_results($sql);
if (!empty($months))
{
foreach ($months as $month)
{
// Add in the year heading
if (($year == "") || ($year != $month->Year))
{
if (strlen($output))
{
$output .= "<br />\n<strong>" . $month->Year . ":</strong>&nbsp;";
}
else
{
$output .= "\n<strong>" . $month->Year . ":</strong>&nbsp;";
}
}
// Add in the monthly archive links
if ($year == $month->Year)
$output .= $month_separator;
$output .= '<a href="' . get_month_link($month->Year, $month->Month) . '">' . date($month_format, mktime(0, 0, 0, $month->Month, 1, $month->Year)) . '</a>';
$year = $month->Year;
}
}
else
{
$output = "<p>None available</p>\n";
}
print $output;
}
?>

View File

@ -8,14 +8,10 @@
function melville_theme_styles(){ function melville_theme_styles(){
wp_enqueue_style( 'style', get_stylesheet_uri() ); wp_enqueue_style( 'style', get_stylesheet_uri() );
wp_enqueue_script('jquery');
} }
add_action( 'wp_enqueue_scripts', 'melville_theme_styles' ); add_action( 'wp_enqueue_scripts', 'melville_theme_styles' );
//include 'plugins/drop-caps/wp_drop_caps.php';
if (!function_exists('arl_kottke_archives')) {
include 'plugins/arl_kottke_archives.php';
}
/** /**
* Set the content width based on the theme's design and stylesheet. * Set the content width based on the theme's design and stylesheet.
* *
@ -66,7 +62,8 @@ function melville_setup() {
// This theme uses wp_nav_menu() in one locations. // This theme uses wp_nav_menu() in one locations.
register_nav_menus( array( register_nav_menus( array(
'header-menu' => __( 'Header Menu', 'twentyten'), 'header-menu' => __( 'Header Menu', 'twentyten'),
'footer-menu' => __( 'Footer Menu', 'twentyten' ) 'footer-menu' => __( 'Footer Menu', 'twentyten' ),
'slidedown-menu' => __( 'SlideDown Menu', 'twentyten' )
) ); ) );
} }
endif; endif;
@ -154,7 +151,7 @@ function melville_remove_gallery_css( $css ) {
add_filter( 'gallery_style', 'melville_remove_gallery_css' ); add_filter( 'gallery_style', 'melville_remove_gallery_css' );
if ( ! function_exists( 'melville_comment' ) ) : if ( ! function_exists( 'melville_comment' ) ) :
/** /**
* Template for comments and pingbacks. * Template for comments and pingbacks.
* *
* To override this walker in a child theme without modifying the comments template * To override this walker in a child theme without modifying the comments template
@ -163,50 +160,83 @@ if ( ! function_exists( 'melville_comment' ) ) :
* Used as a callback by wp_list_comments() for displaying the comments. * Used as a callback by wp_list_comments() for displaying the comments.
* *
* @since Twenty Ten 1.0 * @since Twenty Ten 1.0
*
* @param WP_Comment $comment The comment object.
* @param array $args An array of arguments. @see get_comment_reply_link()
* @param int $depth The depth of the comment.
*/ */
function melville_comment( $comment, $args, $depth ) { function melville_comment( $comment, $args, $depth ) {
$GLOBALS['comment'] = $comment; $GLOBALS['comment'] = $comment;
switch ( $comment->comment_type ) : switch ( $comment->comment_type ) :
case '' : case '':
case 'comment':
?> ?>
<li <?php comment_class(); ?> id="li-comment-<?php comment_ID(); ?>"> <li <?php comment_class(); ?> id="li-comment-<?php comment_ID(); ?>">
<div id="comment-<?php comment_ID(); ?>"> <div id="comment-<?php comment_ID(); ?>">
<div class="comment-author vcard"> <div class="comment-author vcard">
<?php echo get_avatar( $comment, 40 ); ?> <?php echo get_avatar( $comment, 40 ); ?>
<?php printf( __( '%s <span class="says">said:</span>', 'twentyten' ), sprintf( '<cite class="fn">%s</cite>', get_comment_author_link() ) ); ?> <?php
/* translators: %s: Author display name. */
printf( __( '%s <span class="says">says:</span>', 'twentyten' ), sprintf( '<cite class="fn">%s</cite>', get_comment_author_link() ) );
?>
</div><!-- .comment-author .vcard --> </div><!-- .comment-author .vcard -->
<?php if ( $comment->comment_approved == '0' ) : ?>
<em><?php _e( 'Your comment is awaiting moderation.', 'twentyten' ); ?></em> <?php
$commenter = wp_get_current_commenter();
if ( $commenter['comment_author_email'] ) {
$moderation_note = __( 'Your comment is awaiting moderation.', 'twentyten' );
} else {
$moderation_note = __( 'Your comment is awaiting moderation. This is a preview; your comment will be visible after it has been approved.', 'twentyten' );
}
?>
<?php if ( '0' == $comment->comment_approved ) : ?>
<em class="comment-awaiting-moderation"><?php echo $moderation_note; ?></em>
<br /> <br />
<?php endif; ?> <?php endif; ?>
<div class="comment-meta commentmetadata"><a href="<?php echo esc_url( get_comment_link( $comment->comment_ID ) ); ?>"> <div class="comment-meta commentmetadata"><a href="<?php echo esc_url( get_comment_link( $comment->comment_ID ) ); ?>">
<?php <?php
/* translators: 1: date, 2: time */ /* translators: 1: Date, 2: Time. */
printf( __( '%1$s', 'twentyten' ), get_comment_date(), get_comment_time() ); ?></a><?php edit_comment_link( __( '(Edit)', 'twentyten' ), ' ' ); printf( __( '%1$s at %2$s', 'twentyten' ), get_comment_date(), get_comment_time() );
?>
</a>
<?php
edit_comment_link( __( '(Edit)', 'twentyten' ), ' ' );
?> ?>
</div><!-- .comment-meta .commentmetadata --> </div><!-- .comment-meta .commentmetadata -->
<div class="comment-body"><?php comment_text(); ?></div> <div class="comment-body"><?php comment_text(); ?></div>
<div class="reply"> <div class="reply">
<?php comment_reply_link( array_merge( $args, array( 'depth' => $depth, 'max_depth' => $args['max_depth'] ) ) ); ?> <?php
comment_reply_link(
array_merge(
$args,
array(
'depth' => $depth,
'max_depth' => $args['max_depth'],
)
)
);
?>
</div><!-- .reply --> </div><!-- .reply -->
</div><!-- #comment-## --> </div><!-- #comment-## -->
<?php <?php
break; break;
case 'pingback' : case 'pingback':
case 'trackback' : case 'trackback':
?> ?>
<li class="post pingback"> <li class="post pingback">
<p><?php _e( 'Pingback:', 'twentyten' ); ?> <?php comment_author_link(); ?><?php edit_comment_link( __('(Edit)', 'twentyten'), ' ' ); ?></p> <p><?php _e( 'Pingback:', 'twentyten' ); ?> <?php comment_author_link(); ?><?php edit_comment_link( __( '(Edit)', 'twentyten' ), ' ' ); ?></p>
<?php <?php
break; break;
endswitch; endswitch;
} }
endif; endif;
/** /**
* Removes the default styles that are packaged with the Recent Comments widget. * Removes the default styles that are packaged with the Recent Comments widget.
* *
@ -376,6 +406,39 @@ function melville_widgets_init() {
'after_title' => '</h3>', 'after_title' => '</h3>',
) )
); );
// Area 5, located in the popout. Empty by default.
register_sidebar(
array(
'name' => __( 'First Slidedown Widget Area', 'twentyten' ),
'id' => 'first-slidedown-widget-area',
'description' => __( 'An optional widget area for your site sidedown.', 'twentyten' ),
'before_widget' => '<div id="%1$s" class="slidedown-widget-container %2$s">',
'after_widget' => '</div>',
'before_title' => '<h3 class="slidedown-widget-title">',
'after_title' => '</h3>',
)
);
// Area 6, located in the popout. Empty by default.
register_sidebar(
array(
'name' => __( 'Second Slidedown Widget Area', 'twentyten' ),
'id' => 'second-slidedown-widget-area',
'description' => __( 'An optional widget area for your site slidedown.', 'twentyten' ),
'before_widget' => '<div id="%1$s" class="slidedown-widget-container %2$s">',
'after_widget' => '</div>',
'before_title' => '<h3 class="slidedown-widget-title">',
'after_title' => '</h3>',
)
);
} }
/** Register sidebars by running twentyten_widgets_init() on the widgets_init hook. */ /** Register sidebars by running twentyten_widgets_init() on the widgets_init hook. */
add_action( 'widgets_init', 'melville_widgets_init' ); add_action( 'widgets_init', 'melville_widgets_init' );

View File

@ -33,6 +33,80 @@
</script> </script>
<noscript><link rel="stylesheet" type="text/css" media="all" href="<?php echo get_template_directory_uri(); ?>/css/noscript.css" /></noscript> <noscript><link rel="stylesheet" type="text/css" media="all" href="<?php echo get_template_directory_uri(); ?>/css/noscript.css" /></noscript>
--> -->
<style>
#panel
{
/* color: black; */
text-align: left;
/* background-color: #9BC8E8; */
background-color: #e5eecc;
border: solid 1px #c3c3c3;
/* column-count: 4; */
padding: 20px;
display: none;
margin: 0 0 20px 0;
}
#panel a {
/* color:black; */
}
.bar1, .bar2, .bar3 {
width: 35px;
height: 5px;
background-color: #777;
margin: 6px 0;
transition: 0.4s;
}
.change .bar1 {
-webkit-transform: rotate(-45deg) translate(-9px, 6px);
transform: rotate(-45deg) translate(-9px, 6px);
}
.change .bar2 {opacity: 0;}
.change .bar3 {
-webkit-transform: rotate(45deg) translate(-8px, -8px);
transform: rotate(45deg) translate(-8px, -8px);
}
#flip {
margin: -40px 0 0 90%;
}
#slidedown-widget-area { margin: 20px; }
.slidedown-widget-container {}
div#slidedown-widget-area input#s {
width: 55%;
}
div#slidedown-widget-area input#searchsubmit { margin: 0 10px 0 20px; }
.slidedown-widget-area { width: 45%;}
.widget-float-left { float: left;}
.widget-float-right {
float: right;
}
h3.slidedown-widget-title {
font-size: 1.3em;
}
</style>
<title><?php <title><?php
/* /*
* Print the <title> tag based on what is being viewed. * Print the <title> tag based on what is being viewed.
@ -59,12 +133,21 @@
<?php if ( is_singular() ) wp_enqueue_script( "comment-reply" ); ?> <?php if ( is_singular() ) wp_enqueue_script( "comment-reply" ); ?>
<?php wp_head();?> <?php wp_head();?>
<script>
jQuery(document).ready(function(){
jQuery("#flip").click(function(){
jQuery("#panel").slideToggle();
jQuery("#flip").toggleClass("change");
});
});
</script>
</head> </head>
<body <?php body_class(); ?>> <body <?php body_class(); ?>>
<div id="wrapper"> <div id="wrapper">
<?php /* Our navigation menu. If one isn't filled out, wp_nav_menu falls back to wp_page_menu. The menu assiged to the primary position is the one used. If none is assigned, the menu with the lowest ID is used. */ ?> <?php /* Our navigation menu. If one isn't filled out, wp_nav_menu falls back to wp_page_menu. The menu assiged to the primary position is the one used. If none is assigned, the menu with the lowest ID is used. */ ?>
<?php wp_nav_menu( array( 'container_class' => 'melville_header_menu', 'theme_location' => 'header-menu' ) ); ?>
<div id="header"> <div id="header">
<?php $heading_tag = ( is_home() || is_front_page() ) ? 'h1' : 'div'; ?> <?php $heading_tag = ( is_home() || is_front_page() ) ? 'h1' : 'div'; ?>
@ -73,5 +156,13 @@
</<?php echo $heading_tag; ?>> </<?php echo $heading_tag; ?>>
<div id="site-description"><?php bloginfo( 'description' ); ?></div> <div id="site-description"><?php bloginfo( 'description' ); ?></div>
</div><!--#header--> </div><!--#header-->
<div id="flip"> <div class="bar1"></div>
<div class="bar2"></div>
<div class="bar3"></div></div>
<div id="panel">
<?php wp_nav_menu( array( 'container_class' => 'melville_header_menu', 'theme_location' => 'slidedown-menu' ) ); ?>
<?php get_sidebar( 'slidedown' ); ?>
<div style="clear: both"></div>
</div>
<div id="content"> <div id="content">

44
sidebar-slidedown.php Normal file
View File

@ -0,0 +1,44 @@
<?php
/**
* The popout widget areas
*
* @package WordPress
* @subpackage Twenty_Ten
* @since Twenty Ten 1.0
*/
?>
<?php
/*
* The footer widget area is triggered if any of the areas
* have widgets. So let's check that first.
*
* If none of the sidebars have widgets, then let's bail early.
*/
if ( ! is_active_sidebar( 'first-slidedown-widget-area' )
&& ! is_active_sidebar( 'second-slidedown-widget-area' )
) {
return;
}
// If we get this far, we have widgets. Let do this.
?>
<div id="slidedown-widget-area" role="complementary">
<?php if ( is_active_sidebar( 'first-slidedown-widget-area' ) ) : ?>
<div id="first" class="widget-float-left slidedown-widget-area">
<div class="xoxo">
<?php dynamic_sidebar( 'first-slidedown-widget-area' ); ?>
</div>
</div><!-- #first .widget-area -->
<?php endif; ?>
<?php if ( is_active_sidebar( 'second-slidedown-widget-area' ) ) : ?>
<div id="second" class="widget-float-right slidedown-widget-area">
<div class="xoxo">
<?php dynamic_sidebar( 'second-slidedown-widget-area' ); ?>
</div>
</div><!-- #second .widget-area -->
<?php endif; ?>
</div><!-- #footer-widget-area -->

View File

@ -761,24 +761,29 @@ h3#reply-title { margin: 18px 0; }
/* Footer Menu Styles */ /* Footer Menu Styles */
.melville_header_menu ul .melville_header_menu ul
{ {
list-style: none; /* list-style: none; */
padding: 0px; padding: 0px;
} }
.melville_header_menu ul ul .melville_header_menu ul ul
{ {
display: none; /* display: none; */
position: absolute; /* position: absolute; */
background-color: white; /* background-color: white; */
} }
.melville_header_menu li .melville_header_menu li
{ {
display: inline-block; display: inline-block;
padding-right: 20px; width: 24%;
vertical-align: top;
padding: 0px;
margin-bottom: 20px;
} }
.melville_header_menu li a { text-decoration: none; } .melville_header_menu li a { text-decoration: none; }
/*
.melville_header_menu li:hover ul .melville_header_menu li:hover ul
{ {
display: block; display: block;
@ -786,13 +791,16 @@ h3#reply-title { margin: 18px 0; }
padding: 0 10px; padding: 0 10px;
border-top: 1px solid; border-top: 1px solid;
} }
*/
.melville_header_menu li li .melville_header_menu li li
{ {
display: block; /* display: block; */
display: inline-block;
text-align: left; text-align: left;
padding-top: 10px; padding-top: 10px;
padding-left: 5px; padding-left: 0px;
} }
.melville_header_menu li ul { } .melville_header_menu li ul { }
@ -802,6 +810,7 @@ h3#reply-title { margin: 18px 0; }
{ {
text-align: center; text-align: center;
font-variant: small-caps; font-variant: small-caps;
margin-bottom: 50px;
} }
/* # Gutenberg Blocks ---------------------------------------------- */ /* # Gutenberg Blocks ---------------------------------------------- */
@ -977,6 +986,32 @@ p.has-drop-cap:not(:focus):first-letter
#footer-widget-area .widget-area { width: 25%; } #footer-widget-area .widget-area { width: 25%; }
} }
@media screen and (max-width: 550px) {
.widget-float-right, .widget-float-left {
float: left;
}
.slidedown-widget-area {
width: 90%;
}
.melville_header_menu {
font-size: 1.4em;
}
.melville_header_menu li
{
width: 95%;
margin-bottom: 30px;
}
}
/* # Possibly Obsolete */ /* # Possibly Obsolete */
.headerLine .headerLine
{ {
@ -988,13 +1023,14 @@ p.has-drop-cap:not(:focus):first-letter
.sticky .sticky
{ {
background: #c3dce8; /* background: #c3dce8; */
position: relative; position: relative;
width: 100%; width: 100%;
margin: 20px -80px !important; margin: 20px -80px !important;
padding: 30px 80px; padding: 30px 80px;
text-shadow: none; text-shadow: none;
z-index: 0; z-index: 0;
background-color: #E1DEE0;
} }
@media screen and (prefers-color-scheme: dark) @media screen and (prefers-color-scheme: dark)